From: Nick Holford n.holford@auckland.ac.nz
Subject: [NMusers] Using CONT data item
Date: Sat, 27 Aug 2005 05:51:05 +1200

Hi,

There have been some recent postings about how to get NONMEM to accept more than 20 data items. NONMEM provides
a mechanism to do this but it is not well documented. I have got it to work by trial and error based on
tip #21 (http://www.globomax.com/nonmem_tip21.htm).
There are several things I found I had to do:

1. Set up the data with 2 lines per record. The example below shows a total of 38 variables
in one record split over 2 lines in the data set.

It seems to be important to repeat the ID CONT DV and MDV data items in both lines. The ID, DV and MDV values
should be the same in both lines. The CONT item should be 1 in the first line and 0 in the second line.
It is also important to have other data items with special meaning such
as AMT, CMT, SS, II, RATE, EVID on the second line (CONT=0 line)

;1   2   3  4   5    6    7   8   9    10   11   12  13  14  15  16  17   18   19
ID CONT DV MDV STDY RACE RF  AGE DVID X10  X11  X12 X13 X14 X15 X16 X17  X18  X19
;1   2   3  4   5    6    7   8   9    10   11   12  13  14  15  16  17   18   19
ID CONT DV MDV TIME AMT  CMT SS  II   RATE EVID WT  ICL  IVC IQ IVP ITAB ITLA IF1

2. The $INPUT record must only specify items data items on the second line (CONT=0) e.g.

$INPUT ID CONT DV MDV TIME AMT CMT ADDL II RATE
EVID WT ICL IVC IQ IVP ITAB ITLA IF1

3. In $PK I extract the data items from the first line (CONT=1) using verbatim code using their
position in the EVTREC matrix. When I want to use these variables later in abbreviated code
NM-TRAN will complain if I only define them in verbatim code. So I declare them to NM-TRAN in
a NEWIND block. The assignment of 0 to these variables does nothing except keep NM-TRAN happy.

$PK

; Declare extra data item variable names for NM-TRAN
   IF (NEWIND.LE.1) THEN
      STDY=0
      RACE=0
      RF=0
      AGE=0
      DVID=0
   ENDIF
; Get data items from EVTREC matrix
"       STDY=EVTREC(1,5)
"       RACE=EVTREC(1,6)
"       RF=EVTREC(1,7)
"       AGE=EVTREC(1,8)
"       DVID=EVTREC(1,9)
; Use the extra data item (AGE in this example)
   FAGE=EXP(KAGE*(AGE-40)
   CL=FAGE*THETA(1)*EXP(ETA(1))

In the example above I describe things in terms of 2 lines with the second line being the CONT=0 line.
I have not tested it but in theory one should be able to extend this process using as many
lines per event record as you wish. All lines but the last one must have CONT=1 and the same
values of ID, DV and MDV. The last line of the set of lines making up one event record must have CONT=0.

Nick

--
Nick Holford, Dept Pharmacology & Clinical Pharmacology
University of Auckland, 85 Park Rd, Private Bag 92019, Auckland, New Zealand
email:n.holford@auckland.ac.nz tel:+64(9)373-7599x86730 fax:373-7556
http://www.health.auckland.ac.nz/pharmacology/staff/nholford/

_______________________________________________________

From: Sam Liao sliao@pharmaxresearch.com
Subject: Re: [NMusers] Using CONT data item
Date: Fri, 26 Aug 2005 14:33:26 -0400

Hi Nick:
This is very helpful example.  As you pointed out, it is not well documented.
Can we use this same method for $PRED as in $PK?  I was not able to do this
in $PRED, but I was able to read additional variables from the second external file.

Best regards,
Sam Liao
Pharmax Research 
_______________________________________________________

From: Nick Holford n.holford@auckland.ac.nz
Subject: Re: [NMusers] Using CONT data item
Date: Sat, 27 Aug 2005 07:15:06 +1200

Sam,

The documentation for the CONT data item indicates that it is a PREDPP specific
feature i.e. is used with $PK. I have never tried it with $PRED.

Nick

 -------------------------------------------------------------------
 |                                                                 |
 |                            CONT DATA ITEM                       |
 |                                                                 |
 ------------------------------------------------------------------

 MEANING: Continuation (CONT) data item for PREDPP
 CONTEXT: $INPUT record and NONMEM data set

 USAGE:
 $INPUT ... CONT ...

 DISCUSSION:
 CONT labels PREDPP's continuation (CONT) data item.  The  continuation
 data  item  is  optional.   The  CONT  data item allows a PREDPP event
 record to span several data records.  It is useful when more  than  20
 data  items are needed to describe a single event.  When the CONT data
 item is not defined on the $INPUT record, every event record  consists
 of a single data record.
 
_______________________________________________________