Re: Bootstrap sampling
From: Pascal Girard <pg@upcl.univ-lyon1.fr>
Subject: Re: Bootstrap sampling
Date: 8 Jan 1998 06:56:20 -0500
Dear John,
I'm supposing you work under a PC DOS system.
One way of doing the bootstrap with NONMEM would be using a statistical language as SAS or Splus. Here is a sketch of what can be done using Splus:
1) create an NMTRAN file that will read the file bootstrap.dat and will include you own INFN routine or some verbatim code called when ICAL=3. This INFN will save your final estimates for each NONMEM run.
2) bootstrap your sample in Splus (very easily done) and create the bootstraped data set bootstrap.dat ready for NONMEM
3) call NONMEM from Splus using Splus function named "dos"
Steps 2 & 3 can be performed as many times you want in an Splus loop. Your final estimates will be in the file created by INFN.
Another way would be doing this directly within NONMEM using verbatim code and apropriate values of ICALL. It should be a little bit tricky, because one solution I see would be using the PASS subroutine. For the first 35 individuals the MDV for observations would be set to 0, and and for the last 14 individuals it would be set to 1. Since the PASS subroutine cannot be used for modifying MDV, each individual will need to have exactly the same data structure in order to replace the first 35 individuals, within the NONMEM data set, by any other (1 to 49) bootstrapped individual (e.g. for PK and use of PREDPP, same doses and same number of observation between each defined doses, in order not to have to modify the MDV). Selection of bootstrapped individuals would be done by generating a uniform random integer between 1 and 49, using RANDOM subroutine and some verbatim code.
I'm not sure it helps, but someone on the NONMEM user group may have some better ideas.
Pascal Girard
---------------------------------------------------------------------
Clinical Pharmacology Unit PG@upcl.univ-lyon1.fr
BP 3041 Tel : (33)(0)4 72 11 52 35
162, avenue Lacassagne Fax : (33)(0)4 78 53 10 30
69394 LYON Cedex 03 FRANCE