pkpdpkpd
●

2007-04-04 22:52
(5408 d 07:39 ago)

Posting: # 627
Views: 17,533

## assessment of steady state in WinNonLin [Software]

Is it possible to use WinNonLin to assess the achievement of steady state on the basis of pre-dose concentrations?

Regards,
PKPDPKPD
Helmut
★★★

Vienna, Austria,
2007-04-05 02:30
(5408 d 04:01 ago)

@ pkpdpkpd
Posting: # 628
Views: 16,200

## steady state in WinNonlin (example)

Dear PKPDPKPD!

» Is it possible to use WinNonLin to assess the achievement of steady state on the basis of pre-dose concentrations?

Yes.
Using the example of this post we have:
+-----+-------+ |  t  |   c   | +-----+-------+ |  24 | 21.05 | |  48 | 25.04 | |  72 | 25.08 | |  96 | 25.94 | | 120 | 25.97 | +-----+-------+

In WinNonlin (v5.2) open a new workbook and enter these values.
Use only the last three values:
Data > Exclude > Selection
Tools > PK/PD/NCA Wizard (or )
Select 'Linear' > Next > Model 502 (Linear) > Next > Finish
Click on the 'Data Variables' icon
Drag the time variable to the 'X variable' field, drag the concentration variable to the 'Y variable' field > OK
Model > Start Modeling (or click the 'calculator' icon)
A new linear workbook opens, navigate to the 'Non-Transposed Final Parameters' tab.
There are two parameters, namely 'INT' and 'SLOPE'.
'INT' is the estimated Cmin, but we are interested in 'SLOPE', which should be zero in 'true' steady-state.
Now look at the 'Estimate'-column, which gives a value of 0.018542 for slope.
A common method for the assessment of SS-conditions is either doing a t-test (0.05,2-sided), or looking at the 95% confidence interval,* which should include zero.
WinNonlin gives you the confidence interval in the columns 'PlanarCI_Lower' and 'PlanarCI_Uper' with -0.279250 and 0.316334. Since zero is included in the CI, steady state conditions are reached.

I added a little noise to the data:
+-----+-------+ |  t  |   c   | +-----+-------+ |  24 | 18.71 | |  48 | 22.44 | |  72 | 22.44 | |  96 | 25.63 | | 120 | 23.25 | +-----+-------+
Now we get a slope of 0.016875 (95% CI -1.981561 to 2.015311); still in steady state.

I'm not sure when Pharsight introduced linear models in WinNonlin (maybe in v5.0), in older versions you may use the 'LinMix Wizard' (which is a little bit confusing for a beginner), or use this ASCII-model - which is pretty simple:
MODEL   COMMANDS     NFUNCTIONS 1     NPARAMETERS 2     PNAMES  'inter', 'slope'   END   FUNCTION 1     F = inter + slope * X   END EOM

• Weimann HJ. Drug concentrations and directly derived parameters. In: Cawello W, editor. Parameters for Compartment-Free Pharmacokinetics. Aachen: Shaker-Verlag; 2003. p. 23-38.

Dif-tor heh smusma 🖖
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
pkpdpkpd
●

2007-04-05 16:33
(5407 d 13:58 ago)

@ Helmut
Posting: # 633
Views: 15,364

## steady state in WinNonlin (example)

Dear Helmut!

Thanks for your instructions. However, I have two problems:
1. The version 5.01 of WinNonLin that I have do not have "Linear" function in the PK/PD/NCA Wizard.
2. The approach I would like to use for the assessment of steady state is repeated measures ANOVA of log concentrations instead of linear regression you are describing, since I am comparing the pre-dose concentrations in several subjects on three consecutive days.
If I have one dependent variable (concentration) and subject as a random effect (??), and day as a fixed effect (???), how can I use Lin Mix to do the calculations.

PKPDPKPD

PS. In the linear regression while assessing the slope, should it be 95% or 90% CI?
Helmut
★★★

Vienna, Austria,
2007-04-05 17:16
(5407 d 13:15 ago)

@ pkpdpkpd
Posting: # 634
Views: 15,536

## steady state in WinNonlin (example)

Dear PKPDPKPD!

» Thanks for your instructions. However, I have two problems:
» 1. The version 5.01 of WinNonLin that I have do not have "Linear" function in the PK/PD/NCA Wizard.

Just looked it up in the release notes, linear models were introducted in v5.1 (23 Oct, 2006). If you have a valid license (which I assume), you may update at no costs.

» 2. The approach I would like to use for the assessment of steady state is repeated measures ANOVA of log concentrations instead of linear regression you are describing, since I am comparing the pre-dose concentrations in several subjects on three consecutive days.

» If I have one dependent variable (concentration) and subject as a random effect (??), and day as a fixed effect (???), how can I use Lin Mix to do the calculations.

OK, ANOVA is not included in WinNonlin; you will have to fight through a Linear Mixed Effects Model (which is always a little bit tricky). One hint: all effects are fixed!
Since I haven't done this myself yet, maybe another member of the forum can fill in the gap?
...or ask Pharsight's support - and be patient!

I know some colleagues are using repeated measures ANOVA; I never could understand why.
The outcome is always a yes/no result.
What if you get a significant result - would you really throw away the entire study?
If you are testing individual subjects, you have the option - providing you have stated such a procedure in the protocol - to exclude only these subjects from the evaluation since they did not reach steady state.

» In the linear regression while assessing the slope, should it be 95% or 90% CI?

95% since p = 1-alpha, where alpha=0.05. This is only a convention.

In BE we are only using a 90% CI, because in patients BA of the test can either be lower (5%) or higher (5%) then BA of the reference.
Therefore the individual patient's risk is kept at 5%.

Dif-tor heh smusma 🖖
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
pkpdpkpd
●

2007-04-05 17:39
(5407 d 12:52 ago)

@ Helmut
Posting: # 635
Views: 15,351

## steady state in WinNonlin (example)

Dear Helmut,

Thanks once again.

» OK, ANOVA is not included in WinNonlin; you will have to fight through a Linear Mixed Effects Model (which is always a little bit tricky). One hint: all effects are fixed!
» Since I haven't done this myself yet, maybe another member of the forum can fill in the gap?
» ...or ask Pharsight's support - and be patient!

It's true. LinMix is a catastrophy and I am fighting through it. Till now not very succesfull. BEBAC members: please, help!!!

» I know some colleagues are using repeated measures ANOVA; I never could understand why.
» The outcome is always a yes/no result.
» What if you get a significant result - would you really throw away the entire study?
» If you are testing individual subjects, you have the option - providing you have stated such a procedure in the protocol - to exclude only these subjects from the evaluation since they did not reach steady state.

An interesting approach. Till now (I am pretty fresh) have not seen any protocols with individual assessment of the achievment of steady state. Is it because it is more time consuming???? And what is about multiple comparisons in this case?

» » In the linear regression while assessing the slope, should it be 95% or 90% CI?
»
» 95% since p = 1-alpha, where alpha=0.05. This is only a convention.
»
» In BE we are only using a 90% CI, because in patients BA of the test can either be lower (5%) or higher (5%) then BA of the reference.
» Therefore the individual patient's risk is kept at 5%.

Does it mean, that I use 95% CI when I assess steady state by subject and 90% CI when I assess by entire study?

PKPDPKPD
Helmut
★★★

Vienna, Austria,
2007-04-05 18:40
(5407 d 11:51 ago)

@ pkpdpkpd
Posting: # 637
Views: 15,429

Dear PKPDPKPD!

» » ...or ask Pharsight's support - and be patient!

» It's true. LinMix is a catastrophy and I am fighting through it. Till now not very succesfull.

Full ACK, and the manual isn't very helpful either.
I guess Pharsight would call it 'steep learning curve' and want you to sign up in one of their courses...

I'm waiting for a correct implementation of a paired design (e.g., comparing steady state AUC with single dose AUC in the same subjects) since February 25th, 2007...

» » I know some colleagues are using repeated measures ANOVA; I never could understand why.
» » The outcome is always a yes/no result.
» » What if you get a significant result - would you really throw away the entire study?
» » If you are testing individual subjects, you have the option - providing you have stated such a procedure in the protocol - to exclude only these subjects from the evaluation since they did not reach steady state.

» An interesting approach. Till now (I am pretty fresh) have not seen any protocols with individual assessment of the achievment of steady state. Is it because it is more time consuming???? And what is about multiple comparisons in this case?

It's not time consuming (just ran 24 subjects on a 2x2.8GHz Xeon, 2GB RAM in <10 seconds). Whether you apply model 502 (v5.2) or an ASCII-model of the linear regression, you'll end up with a nice table listing the estimated slopes and their CIs for all subjects.
What do you mean with multiple comparisons?

» Does it mean, that I use 95% CI when I assess steady state by subject and 90% CI when I assess by entire study?

If you mean assessment of steady state I would always use the 95% CI (the 90% CI used in bioequivalence is a rare exception).

You also may opt for a multivariate analysis based on the one-sample Hotelling T2 statistic. Such an approach would not only give you information whether steady state was reached or not, but also when.
Since this test is not included (and I guess will never be) in WinNonlin, you have to go for alternatives.
The cheapest commercial package I know, supporting Hotelling's T2 is NCSS 2007; if you are familiar with the R-language, you may misuse this package under the GPL.

Dif-tor heh smusma 🖖
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
pkpdpkpd
●

2007-04-05 21:37
(5407 d 08:54 ago)

@ Helmut
Posting: # 638
Views: 15,420

Thank you, Helmut.
Helmut
★★★

Vienna, Austria,
2007-04-06 00:23
(5407 d 06:08 ago)

@ Helmut
Posting: # 639
Views: 15,685

» I'm waiting for a correct implementation of a paired design (e.g., comparing steady state AUC with single dose AUC in the same subjects) since February 25th, 2007...

Does Pharsight monitor this site?

Just received the model specification from their support after 40 days of useless e-mails (RTFM); in case somebody needs it (a paired design is neither given in the manual, nor the support site):

Bioequivalence Wizard > Type of Study > Parallel/Other
Choose Treatment and Reference value > Next
Drag 'subject' from the 'Variable Collection' to 'Classification Variables'
Model Specification:
subject+treatment > Next and proceed as usual

WinNonlin's results are identical with NCSS 2001 and EquivTest/PK.

Dif-tor heh smusma 🖖
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
apapanas
☆

Greece,
2018-01-03 14:44
(1481 d 14:47 ago)

@ Helmut
Posting: # 18136
Views: 9,773

## steady state in WinNonlin (example)

Dear Helmut,

For your information, I discovered a defect in the calculation of univariate confidence intervals using WNL. I have already contacted Certara, who recognised the issue and shall proceed to relevant update. So, I would not recommend using the linear model 502 for confirmation of steady-state achievement for the time being.

Kindest regards,
Antigoni
Helmut
★★★

Vienna, Austria,
2018-01-04 17:11
(1480 d 12:20 ago)

@ apapanas
Posting: # 18141
Views: 9,729

## steady state in WinNonlin (example)

Hi Antigoni,

» […] I discovered a defect in the calculation of univariate confidence intervals using WNL. I have already contacted Certara, who recognised the issue and shall proceed to relevant update. So, I would not recommend using the linear model 502 for confirmation of steady-state achievement for the time being.

Interesting. How did you discovered that? Using my example data in R:

t <- c(24, 48, 72, 96, 120) c <- c(18.71, 22.24, 22.44, 25.63, 23.25) m <- lm(c[3:5] ~ t[3:5]) # use only the last 3 summary(m) Call: lm(formula = c[3:5] ~ t[3:5]) Residuals:       1       2       3 -0.9283  1.8567 -0.9283 Coefficients:             Estimate Std. Error t value Pr(>|t|) (Intercept) 22.15333    6.56431   3.375    0.183 t[3:5]       0.01687    0.06700   0.252    0.843 Residual standard error: 2.274 on 1 degrees of freedom Multiple R-squared:  0.05966,   Adjusted R-squared:  -0.8807 F-statistic: 0.06344 on 1 and 1 DF,  p-value: 0.8429 anova(m) Analysis of Variance Table Response: c[3:5]           Df Sum Sq Mean Sq F value Pr(>F) t[3:5]     1 0.3280  0.3280  0.0634 0.8429 Residuals  1 5.1708  5.1708 confint(m, level=0.95)[2, ]      2.5 %     97.5 % -0.8343986  0.8681486

In Phoenix/WinNonlin 8.0:

Linear Model 502
Estimate        0.016875 StdError        0.066996687 UnivarCI_Lower -1.0886159 UnivarCI_Upper  1.1223659

Linear Mixed Effects
 Estimate    0.016875 StdError    0.066996687 Conf_Level 95 Lower_CI   -0.74019547 Upper_CI    0.77394547

Even in bloody M$-Excel 2000 (!) I got an agreement with R up to the fifth significant digit:  0.016875 0.066996687 -0.834394981 0.868144981 Dif-tor heh smusma 🖖 Helmut Schütz The quality of responses received is directly proportional to the quality of the question asked. 🚮 Science Quotes mittyri ★★ Russia, 2018-01-04 23:13 (1480 d 06:18 ago) @ Helmut Posting: # 18144 Views: 9,597 ## qt in WinNonlin Hi Antigoni and Helmut, That's really weird. As I see the problem is in quantile function, looks like approximation is not correct for low DF. R: qt(0.025, 1:7) [1] -12.706205 -4.302653 -3.182446 -2.776445 -2.570582 [6] -2.446912 -2.364624 WNL 502: -16.50068 -4.327589 -3.18348 -2.7764075 -2.5705446 -2.4469136 -2.3646432 For compliance the same solution could be implemented as R did: For central qt, a C translation of Hill, G. W. (1970) Algorithm 396: Student's t-quantiles. Communications of the ACM, 13(10), 619–620. altered to take account of Hill, G. W. (1981) Remark on Algorithm 396, ACM Transactions on Mathematical Software, 7, 250–1. Kind regards, Mittyri Helmut ★★★ Vienna, Austria, 2018-01-05 00:37 (1480 d 04:54 ago) @ mittyri Posting: # 18147 Views: 9,563 ## ‘Deep’ bug Hi Mittyri, » As I see the problem is in quantile function, looks like approximation is not correct for low DF. Wow! R: for (df in 1:7) cat(sprintf("%9.6f", qt(0.025, df, lower.tail=FALSE)), "\n") 12.706205 4.302653 3.182446 2.776445 2.570582 2.446912 2.364624 Spreadsheets: M$-Excel 2000   OO Calc 4.1.1   Gnumeric 1.12.15   12.706150       12.706205         12.706205    4.302656        4.302653          4.302653    3.182449        3.182446          3.182446    2.776451        2.776445          2.776445    2.570578        2.570582          2.570582    2.446914        2.446912          2.446912    2.364623        2.364624          2.364624

tinv(x, y) was introduced as a custom function in PHX/WNL v6.4. Hence, no checking possible in earlier versions. However:
   v6.4       v7.0       v8.0   12.706205  12.706205  12.706205  4.302653   4.302653   4.302653  3.182435   3.182435   3.182435  2.776445   2.776445   2.776445  2.570582   2.570582   2.570582  2.446912   2.446912   2.446912  2.364624   2.364624   2.364624

Since in my example both the estimate and its standard error are correct, something must be wrong ‘behind the curtains’ in PHX/WNL when calculating the CI.

Dif-tor heh smusma 🖖
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
Helmut
★★★

Vienna, Austria,
2018-01-08 00:40
(1477 d 04:51 ago)

@ mittyri
Posting: # 18148
Views: 9,700

## Workarounds for v6.3+

Hi Mittyri and Antigoni,

» As I see the problem is in quantile function, looks like approximation is not correct for low DF

Confirmed. I checked the 64bit-versions of PHX/WNL 6.3, 6.4, 7.0, and 8.0 (Linear Mixed Effects and WNL Linear Model 502, 1–7 degrees of freedom). The critical t-value is not reported in Model 502. But we can ­calculate it from the confidence limit(s), the estimate, and its standard error as    (UnivarCI_Upper – Estimate) / StdError or (Estimate – UnivarCI_Lower) / StdError.
Interesting  Scary that the reported critical t-value in Linear Mixed Effects is also wrong! I didn’t expect that… Results are identical (full numeric precision) in all versions of PHX/WNL. The custom function tinv(0.025, df) introduced in v6.4 is practically correct.

df   R/OO/Gnumeric    LME (rep’d)      %RE     502 (calc)       %RE  tinv(0.025, df)    %RE   1 12.706204736175 11.300117888951 –11.0661 16.500679825590 +29.8632 12.706204736175 ±0.0000  2  4.302652729749  4.270551416408  –0.7461  4.327589042282  +0.5796  4.302652729750 +0.0000  3  3.182446305284  3.178617037716  –0.1203  3.183479996442  +0.0325  3.182434925786 –0.0004  4  2.776445105198  2.775582256369  –0.0311  2.776407538431  –0.0014  2.776445033314 –0.0000  5  2.570581835636  2.570308254272  –0.0106  2.570544577883  –0.0014  2.570581685935 –0.0000  6  2.446911851145  2.446804416220  –0.0044  2.446913617243  +0.0001  2.446911763977 –0.0000  7  2.364624251593  2.364575396335  –0.0021  2.364643234749  +0.0008  2.364624210734 –0.0000

Given that, use only LME (map time as Regressor, concentration as Dependent, drag time from Regressors/Covariates to Model Specification). After execution I suggest these workarounds:
• In v6.3 (might work in earlier versions as well; untested!).
• Data > New > Worksheet; rename to tcrit
Two columns: Denom_DF and tinv
To get the critical t-values:
R-code
for (df in 1:28) {   cat(sprintf("%i %17.14f", df, qt(0.025, df, lower.tail=FALSE)), "\n") }
Open Office Calc, Gnumeric, or current version of M\$-Excel
column A: integer degrees of freedom starting with 1
name column A as df
column B: =TINV(0.05, df): drag down to the maximum DFs
or enter them manually from UsableStats.
• Navigate to Linear Mixed Effects > Output Data > Final Fixed Parameters > Send To > Data > Merge Worksheets
Sort: Denom_DF
Included Column: Effect_Level, Estimate, StdError
Worksheet 2: tcrit
Sort: Denom_DF
Included Column: tinv
Execute.
• Output Data > Result > Send To > Data > Data Wizard
Add a filter: Action: Exclude, Find: NULL, Column: Effect_Level
Add a filter: Action: Exclude, Find: int, Column: Effect_Level
Transformation Type: Custom
New Column Name: CL_lo
Formula: Estimate-tinv*StdError
Transformation Type: Custom
New Column Name: CL_hi
Formula: Estimate+tinv*StdError

• In ≥6.4:
• Results > Final Fixed Parameters > Send To > Data > Data Wizard > Add > Transformation >
Transformation Type: Custom
New Column Name: CL_lo
Formula: Estimate-tinv(0.025, Denom_DF)*StdError
Add another one named CL_hi, Formula: Estimate+tinv(0.025, Denom_DF)*StdError
In BE we don’t need the CI of fixed effects and the degrees of freedom are generally high. However, I’m dumbfounded by such defects in commercial software. Even for high degrees of freedom tinv(x, y) is three orders of magnitude “better” than what is given by LME/BE. Why is it not used?
df   R/OO/Gnumeric       LME = BE        %RE        tinv(0.025, 28)   %RE 28 2.04840714179524  2.04840711367364 –1.37·10–6  2.04840714175209 –2.11·10–9

If you don’t trust in the open source software I used, below an excerpt of R.A. Fisher’s Statistical Methods for Research Workers (1934), the Geigy tables (1980), WolframAlpha, and UsableStats:
df             t(p 0.025)  1  12.706 12.7062 12.706 12.70620474  2   4.303  4.3027  4.303  4.30265273  3   3.182  3.1824  3.182  3.18244912  4   2.776  2.7764  2.776  2.77644504  5   2.571  2.5706  2.571  2.57058169  6   2.447  2.4469  2.447  2.44691177  7   2.365  2.3646  2.365  2.36462421 28   2.048  2.0484  2.048  2.04840714

Dif-tor heh smusma 🖖
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. 🚮
Science Quotes
apapanas
☆

Greece,
2018-01-10 12:47
(1474 d 16:44 ago)

@ Helmut
Posting: # 18157
Views: 9,064

## Workarounds for v6.3+

Dear Helmut,
Thank you for investigating the issue further and for providing recommendations!
Antigoni