Hi Camila,
Alternative (simpler) coding to get TAD would be as follows:
$PK (NONEVENT)IF(AMT.GT.0) TDOS=TIMETAD=TIME-TDOS
The trick here is to add NONEVENT after $PK which tells NONMEM to make calls to 
$PK even for 'hidden' dose times, such as ADDLs, therefore TDOS is updated 
appropriately.
Mannie

 
      From: Bill Denney <wden...@humanpredictions.com>
 To: "de Almeida, Camila" <camila.dealme...@astrazeneca.com>; 
"nmusers@globomaxnm.com" <nmusers@globomaxnm.com> 
 Sent: Tuesday, December 20, 2016 7:39 AM
 Subject: Re: [NMusers] Generating TAD with ADDL dosing format
   
 Hi Camila, It sounds like you've got two questions here-- one related to 
NONMEM and one related to the other program you're using to create your VPC.  
The NONMEM question appears to be "How do I get TAD in my data without changing 
my dataset?"  The second question appears to be "How to I stratify my VPC based 
on that new TAD variable instead of TIME?" For the second question, what 
program are you using for VPC? For the first question, others may have a more 
elegant answer, but I think that you're right:  ADDL makes many dose-related 
events difficult.  The simplest answer is to revise your dataset adding a TAD 
column.  If you can't do that, then something like this will work assuming that 
you only have one dosing record per subject.  (Note that the code below was 
typed directly into email, so it may have typos.)
  ; Set TAD to -1 before any dose record for the subject
  IF (NEWIND.EQ.2) THEN
   DOSETIME = -1
   ADDLREC = 0
   IIREC = 0
 ENDIF
 ; Capture the (most recent) dosing information for this subject
 IF (EVID.EQ.1 .OR. EVID.EQ.4) THEN
   DOSETIME = TIME
   ADDLREC = ADDL
   IIREC = II
 ENDIF
 ; Calculate TAD from the single dose record for a subject in the data set 
assuming
 ; that there is only one dose record per subject or that the dose records occur
 ; such that the most recent dose record is the only one important for 
calculating
 ; TAD for a subject.  This assumption would not hold if there is a dose record
 ; with ADDL that has a dose record for a time in the middle of those ADDL 
doses.
  IF (DOSETIME.LT.0) THEN
   ; This subject has not received a dose yet, set TAD to -1
   TAD = -1
 ELSEIF ((TIME-DOSETIME) .LE. ((ADDLREC+1)*IIREC)) THEN
   ; This subject is in the middle of the ADDL records for this dose,
   ; calculate time since most recent dose.
   TAD = (TIME-DOSETIME) - INT((TIME-DOSETIME)/IIREC)*IIREC
 ELSE
   ; This subject is are after the last ADDL dose, calculate time since the 
final
   ; dose (observed so far).
   TAD = (TIME-DOSETIME) - ((ADDLREC+1)*IIREC)
 ENDIF
 Thanks,  Bill 
 On 12/20/2016 6:45 AM, de Almeida, Camila wrote:
  
 
#yiv5864368767 #yiv5864368767 -- _filtered #yiv5864368767 {panose-1:2 4 5 3 5 4 
6 3 2 4;} _filtered #yiv5864368767 {font-family:Calibri;panose-1:2 15 5 2 2 2 4 
3 2 4;} _filtered #yiv5864368767 {font-family:Verdana;panose-1:2 11 6 4 3 5 4 4 
2 4;} _filtered #yiv5864368767 {font-family:Webdings;panose-1:5 3 1 2 1 5 9 6 7 
3;}#yiv5864368767 #yiv5864368767 p.yiv5864368767MsoNormal, #yiv5864368767 
li.yiv5864368767MsoNormal, #yiv5864368767 div.yiv5864368767MsoNormal 
{margin:0cm;margin-bottom:.0001pt;font-size:11.0pt;}#yiv5864368767 a:link, 
#yiv5864368767 span.yiv5864368767MsoHyperlink 
{color:#0563C1;text-decoration:underline;}#yiv5864368767 a:visited, 
#yiv5864368767 span.yiv5864368767MsoHyperlinkFollowed 
{color:#954F72;text-decoration:underline;}#yiv5864368767 
span.yiv5864368767EmailStyle17 {color:windowtext;}#yiv5864368767 
.yiv5864368767MsoChpDefault {} _filtered #yiv5864368767 {margin:72.0pt 72.0pt 
72.0pt 72.0pt;}#yiv5864368767 div.yiv5864368767WordSection1 {}#yiv5864368767  
Hello,    I was wondering if I could get some guidance from this great group. 
My issue is primarily with some diagnostic analysis, but this is taking me back 
to an old NONMEM problem.    My aim is to run a VPC on a model I implemented, 
and if possible change the idv to TAD instead of TIME. The reason for that is 
the VPC graph based on TIME looks dreadful as the data is sparse and from 
different studies of different lengths.    I’m having issues generating the TAD 
output column from my NONMEM run. I naively assumed I could easily do that, but 
looking at the NONMEM archives it seems this gets tricky when your dosing 
events are written using ADDL. Has anyone ever managed to find a solution for 
this? And if not, is there an  alternative way to run the VCP on TAD, do we 
really need to get this column from NONMEM’s output?    Thanks all,    Camila 
de Almeida, PhD PKPD Scientist, Modelling & Simulation, IMED Oncology DMPK 
________________________________________________________________________________
 AstraZeneca UK Limited R&D, Innovative Medicines    P Please consider the 
environment before printing this e-mail                           AstraZeneca 
UK Limited is a company incorporated in England and Wales with registered 
number:03674842 and its registered office at 1 Francis Crick Avenue, Cambridge 
Biomedical Campus, Cambridge, CB2 0AA. This e-mail and its attachments are 
intended for the above named recipient only and may contain confidential and 
privileged information. If they have come to you in error, you must not copy or 
show them to anyone; instead, please reply to this e-mail, highlighting the 
error to the sender and then immediately delete the message. For information 
about how AstraZeneca UK Limited and its affiliates may process information, 
personal data and monitor communications, please see our privacy notice at  
www.astrazeneca.com 
  William S. Denney, PhD
 Chief Scientist, Human Predictions LLC
 +1-617-899-8123
 wden...@humanpredictions.com  

   
 

Reply via email to