Data imputation [Software]
Dear Ravi!
The sampling schedule was …, 48, 72, 96, 144, 168, 216 h. It does not matter what text you write in a data cell instead of a numeric result. WinNonlin's default (≤5.3) is 'Missing'; however any other text ('Absent' or even 'blabla') is treated in the same way (see below). In Phoenix (≤6.1) it's an empty cell - imported datasets are converted automatically and you can't write text into a numeric field any more.
Have you tried that before asking here? You would have noticed that there's no difference in results. Have you given Pharsight’s support all information? I can't imagine they suggested to essentially exclude measured concentrations of subjects with nonmissing values from the dataset.
However in WinNonlin as well in Phoenix missing values in the profile embedded within measured ones are problematic, because if you have specified the linear trapezoidal in NCA these values are always interpolated in a linear manner, which will give a positive bias of the AUC after tmax.
See also these threads: #3723 and #4182.
It is possible to calculate partial AUCs with the lin/log-option and sum them up later on. But this is a quite cumbersome procedure; for the technical details consider asking your question at Pharsight's Extranet.
I would suggest to log/linear-interpolate missing values; however, I would not interpolate more than two values in a row. Formula: Ci=exp{ln(Ci-1)+(ti-ti-1)×[ln(Ci+1)-ln(Ci-1)]/(ti+1-ti-1)}
Example-function C=100×exp(-0.025×t): 72/96/120/144; 96 & 120 missing, interpolation based on 72 and 144:
AUC with imputed values within [72,144] will be 568.3, whilst Phoenix/WinNonlin will give 693.4 - or a positive bias of 20 % (theoretical from function: 551.9).
The only easy solution I know in PHX/WNL is to calculate AUCs for all (!) subjects by the lin-up/log-down trapezoidal - which is a good idea anyhow (
Overview:
If you use data-imputation you must not use these values in the estimation of lambda-z later on (in PHX/WNL these values must be excluded). Hopefully you have still at least three values in the log/linear phase.
For the next study state your procedure in the protocol (regulators don't like post-hoc data manipulations). I received not a single deficiency letter in the past thirty years for this procedure.
BTW, why have you sampled beyond 72 hours?
❝ […] data was missing at 96 and 120 hr time point and for other subjects data was missing for 72 and 168 hrs. There are certain subjects for whom 48 hr observation is missing.
The sampling schedule was …, 48, 72, 96, 144, 168, 216 h. It does not matter what text you write in a data cell instead of a numeric result. WinNonlin's default (≤5.3) is 'Missing'; however any other text ('Absent' or even 'blabla') is treated in the same way (see below). In Phoenix (≤6.1) it's an empty cell - imported datasets are converted automatically and you can't write text into a numeric field any more.
❝ […] what is wrong with the first approach which I have suggested i.e. Just write missing in place of absent…
Have you tried that before asking here? You would have noticed that there's no difference in results. Have you given Pharsight’s support all information? I can't imagine they suggested to essentially exclude measured concentrations of subjects with nonmissing values from the dataset.
However in WinNonlin as well in Phoenix missing values in the profile embedded within measured ones are problematic, because if you have specified the linear trapezoidal in NCA these values are always interpolated in a linear manner, which will give a positive bias of the AUC after tmax.
See also these threads: #3723 and #4182.
It is possible to calculate partial AUCs with the lin/log-option and sum them up later on. But this is a quite cumbersome procedure; for the technical details consider asking your question at Pharsight's Extranet.
I would suggest to log/linear-interpolate missing values; however, I would not interpolate more than two values in a row. Formula: Ci=exp{ln(Ci-1)+(ti-ti-1)×[ln(Ci+1)-ln(Ci-1)]/(ti+1-ti-1)}
Example-function C=100×exp(-0.025×t): 72/96/120/144; 96 & 120 missing, interpolation based on 72 and 144:
t C
72 16.53
96 Missing
120 Missing
144 2.732
C96 =exp{ln(16.53)+( 96-72)×[ln(2.732)-ln(16.53)]/(144-72)}=9.071
C120=exp{ln(16.53)+(120-72)×[ln(2.732)-ln(16.53)]/(144-72)}=4.978
AUC with imputed values within [72,144] will be 568.3, whilst Phoenix/WinNonlin will give 693.4 - or a positive bias of 20 % (theoretical from function: 551.9).
The only easy solution I know in PHX/WNL is to calculate AUCs for all (!) subjects by the lin-up/log-down trapezoidal - which is a good idea anyhow (
Model Options > NCA Settings > Calculation Method > Linear Up/Log Down
). AUC within [72,144] will be 551.9. If you have stated this procedure in the protocol, you don't have to worry about missing values any more.Overview:
no imputation, linear trapezoidal: 693.4 (bias +20.41 %)
96 & 120 imputated, linear trapezoidal: 568.3 (bias +2.89 %)
no imputation, lin-up/log-down trapezoidal: 551.9 (unbiased)
If you use data-imputation you must not use these values in the estimation of lambda-z later on (in PHX/WNL these values must be excluded). Hopefully you have still at least three values in the log/linear phase.
For the next study state your procedure in the protocol (regulators don't like post-hoc data manipulations). I received not a single deficiency letter in the past thirty years for this procedure.

BTW, why have you sampled beyond 72 hours?
—
Dif-tor heh smusma 🖖🏼 Довге життя Україна!![[image]](https://static.bebac.at/pics/Blue_and_yellow_ribbon_UA.png)
Helmut Schütz
![[image]](https://static.bebac.at/img/CC by.png)
The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
Dif-tor heh smusma 🖖🏼 Довге життя Україна!
![[image]](https://static.bebac.at/pics/Blue_and_yellow_ribbon_UA.png)
Helmut Schütz
![[image]](https://static.bebac.at/img/CC by.png)
The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
Complete thread:
- Missing value in WinNonlin Ravi 2010-04-24 06:16
- Data imputationHelmut 2010-04-24 16:21
- Data imputation Ravi 2010-04-26 06:35
- Data imputation SDavis 2010-04-28 19:15
- Data imputation Ravi 2010-04-29 06:36
- Data imputation /PHST reference #130355 SDavis 2010-04-29 09:42
- Data imputation Ravi 2010-04-29 06:36
- Data imputation SDavis 2010-04-28 19:15
- Data imputation Ravi 2010-04-26 06:35
- Data imputationHelmut 2010-04-24 16:21