# Bioequivalence and Bioavailability Forum 04:54 CET

Bryony Simmons
Junior

UK,
2018-02-01 12:16

Posting: # 18320
Views: 8,041

## Sample size for 4-period 4-sequence crossover BE study [Power / Sample Size]

Hi,

I am in the process of conducting a sample size calculation for a crossover BE study. There are four-treatments (2xreference dosages & 2xtreatment dosages) & I plan to use the Williams' design as follows:

ABCD
BDAC
DCBA

The coefficient of variation from previous studies is 20% & I am assuming the true test reference ratio to be between 0.95 and 1.05. I want to demonstrate bioequivalence (0.80-1.25) at 90% power at the 5% level.

Using these figures, if it was a standard AB/BA crossover, I estimate that I would require 12 individuals to complete each arm - is this correct? I am unsure how this calculation is extended to fit the 4x4 design - do I simply randomise 12 more individuals to each of the remaining two sequences?

Further, if I planned to have just 1 treatment dose changing the design as follows:

ABC
BCA
CAB

Is it reasonable to randomise 12 individuals per sequence?

I really appreciate any help on this question.

Best wishes,
Bryony

Edit: Category changed; see also this post #1. [Helmut]
Helmut
Hero

Vienna, Austria,
2018-02-01 13:01

@ Bryony Simmons
Posting: # 18321
Views: 7,587

## function sampleN.TOST of package PowerTOST

Hi Bryony,

» […]There are four-treatments (2xreference dosages & 2xtreatment dosages) & I plan to use the Williams' design…
» The coefficient of variation from previous studies is 20% & I am assuming the true test reference ratio to be between 0.95 and 1.05. I want to demonstrate bioequivalence (0.80-1.25) at 90% power at the 5% level.

I recommend the package `PowerTOST` for R (open source & free of costs).

```library(PowerTOST) sampleN.TOST(CV=0.2, theta0=0.95, theta1=0.8, theta2=1.25,              targetpower=0.9, alpha=0.05, design="4x4")```

will give

```+++++++++++ Equivalence test - TOST +++++++++++             Sample size estimation ----------------------------------------------- Study design:  4x4 crossover log-transformed data (multiplicative model) alpha = 0.05, target power = 0.9 BE margins = 0.8 ... 1.25 True ratio = 0.95,  CV = 0.2 Sample size (total)  n     power 24   0.907302```

where `n` ist the total sample size (hence, six per sequence).

» […] if it was a standard AB/BA crossover, I estimate that I would require 12 individuals to complete each arm - is this correct? I am unsure how this calculation is extended to fit the 4x4 design - do I simply randomise 12 more individuals to each of the remaining two sequences?

Not quite so. In a 2×2 crossover we have n–2 degrees of freedom and in a 4×4 we have 3n–6. Sample size estimation is an iterative process (sample size is increased until at least the desired power is reached). In this process the degrees of freedom are important. Hence, multiplying the sample size for a 2×2 is not correct.

» Further, if I planned to have just 1 treatment dose changing the design as follows:
» ABC
» BCA
» CAB
» Is it reasonable to randomise 12 individuals per sequence?

No:

``` sampleN.TOST(CV=0.2, theta0=0.95, theta1=0.8, theta2=1.25,              targetpower=0.9, alpha=0.05, design="3x3") +++++++++++ Equivalence test - TOST +++++++++++             Sample size estimation ----------------------------------------------- Study design:  3x3 crossover log-transformed data (multiplicative model) alpha = 0.05, target power = 0.9 BE margins = 0.8 ... 1.25 True ratio = 0.95,  CV = 0.2 Sample size (total)  n     power 24   0.904606```

Therefore, 24 total or eight per sequence.

Be aware that simultaneous comparisons inflate the Type I Error (the patient’s risk). I guess that in your first design you will not compare the two test treatments but only T1 vs. R1, T1 vs. R2, T2 vs. R1, and T2 vs. R2. With these k=4 comparisons (each performed at the nominal α 0.05) the Familywise (Type I) Error Rate will be 1–(1–α)k≤18.55%. Bonferroni’s adjusted α will be α/k or 0.0125 which translates into a 100(1–2α/k) or 97.5% two-sided confidence interval whilst keeping the FWER with 1–(1–α/k)k≤4.91% below the nominal α 0.05. The lower α will substantially increase the sample size: 24 → 36

```sampleN.TOST(CV=0.2, theta0=0.95, theta1=0.8, theta2=1.25,              targetpower=0.9, alpha=0.05/4, design="4x4") +++++++++++ Equivalence test - TOST +++++++++++             Sample size estimation ----------------------------------------------- Study design:  4x4 crossover log-transformed data (multiplicative model) alpha = 0.0125, target power = 0.9 BE margins = 0.8 ... 1.25 True ratio = 0.95,  CV = 0.2 Sample size (total)  n     power 36   0.918242```

In your second design (T1 vs. R and T2 vs. R): 24 → 30

``` sampleN.TOST(CV=0.2, theta0=0.95, theta1=0.8, theta2=1.25,              targetpower=0.9, alpha=0.05/2, design="3x3") +++++++++++ Equivalence test - TOST +++++++++++             Sample size estimation ----------------------------------------------- Study design:  3x3 crossover log-transformed data (multiplicative model) alpha = 0.025, target power = 0.9 BE margins = 0.8 ... 1.25 True ratio = 0.95,  CV = 0.2 Sample size (total)  n     power 30   0.909842```

BTW, in your first design you opted for a Williams’ design

ABCD
BCDA
CDAB
DABC

and not a Latin Square

ABCD
BCDA
CDAB
DABC

In the second one for a Latin Square

ABC
BCA
CAB

and not a Williams’s design

ABC
BCA
CAB
ACB
BAC
CBA

May I ask why?

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
d_labes
Hero

Berlin, Germany,
2018-02-01 14:01

@ Helmut
Posting: # 18322
Views: 7,548

## Alpha adjustment in higher order crossover

Dear Helmut,

» Be aware that simultaneous comparisons inflate the Type I Error (the patient’s risk). I guess that in your first design you will not compare the two test treatments but only T1 vs. R1, T1 vs. R2, T2 vs. R1, and T2 vs. R2. With these k=4 comparisons (each performed at the nominal α 0.05) the Familywise (Type I) Error Rate will be 1–(1–α)k≤18.55%. Bonferroni’s adjusted α will be α/k or 0.0125 which translates into a 100(1–2α/k) or 97.5% two-sided confidence interval whilst keeping the FWER with 1–(1–α/k)k≤4.91% below the nominal α 0.05. The lower α will substantially increase the sample size ...

Also you may be correct I must confess that I seldom or never had done this alpha-adjustment in case I used a higher order design. Reasons:
• Never had problems with using un-adjusted alpha in more then 30 years.
• Usually the comparisions evaluated stand for it's own, a global hypothesis is not defined.
• An alpha-adjustment is only necessary if the single comparisions are combined to a global hypothesis via an OR. For combining them via an AND no alpha-adjustment is necessary.*
• Using the EMA crippled but recommended method for evaluation there are only 2 treatment's involved, again no alpha-adjustment necessary.

• Dieter Hauschke, Volker Steinijans, Iris Pigeot
Bioequivalence Studies in Drug Development
Chapter 7.4 Multiplicity

Regards,

Detlew
Helmut
Hero

Vienna, Austria,
2018-02-01 15:48

@ d_labes
Posting: # 18323
Views: 7,481

## Deficiencies

Dear Detlew,

» Also you may be correct I must confess that I seldom or never had done this alpha-adjustment in case I used a higher order design. Reasons:
» Never had problems with using un-adjusted alpha in more then 30 years.

I faced two.
1. In a dose-linearity study (two adjusted doses compared to one – i.e., not proportionality by the power model). Very similar to the example by Hauschke et al. in chapter 7.4.1 where we find:

“… for a joint decision rule where all requirements must be fulfilled, no adjustment of the comparisonwise type I error is needed to keep the familywise type I error under control.”

Received a deficiency letter from the BfArM in 2005 asking for adjustment:

“Aufgrund der multiplen Berechnung (2 Testpräparate) sollte das Bonferroni-adjustierte 95% Konfidenzintervall […] des Referenzproduktes angenommen werden.”

2. One of my clients aimed at showing BE of two products (tablet, capsule) vs. the reference. One passed and the other one failed. Only the passing one was submitted. Received a deficiency this year from an undisclosed agency:

“Please provide a statistical analysis with proper alpha-adjustment […] as we are of the opinion, that alpha-adjustment is required for this design.”

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
nobody
Senior

2018-02-01 17:10

@ Helmut
Posting: # 18324
Views: 7,468

## Deficiencies

Case 2: Did you start a discussion with the authority?

Kindest regards, nobody
d_labes
Hero

Berlin, Germany,
2018-02-01 18:57
(edited by d_labes on 2018-02-01 19:17)

@ Helmut
Posting: # 18326
Views: 7,466

## Deficiencies

Dear Helmut,

Point 1.: IMHO the deficiency is not correct. To show dose linearity the equivalence test for both dose levels have to be fullfilled. Combination of both tests with AND.
That's similar to the BE decision for AUC and Cmax. Both have to be a positive outcome. Otherwise dose linearity would be rejected. No alpha-adjustment at all. As always stated by me in statistical analysis plans for that cases under the heading "Multiplicity".

Point 2. In the light of the combination of two BE statements (tablet vs. reference or capsule vs. reference) this is combination with OR. If, and only if a global statement is here appropriate. IMHO here both hypotheses are standing for it's own.
As a friend of mine told me quite recently: Since only tablets or capsules came to market, only for that formulation a patient risk exists . Means no alpha-adjustment for multiple testing necssary.
This case is what my former company's boss always told the sponsors: Be aware that the regulatory bodies may ask you for 95% CIs as BE test if you submit "pilot" studies in which one of the two used Test formulations showed BE and the other not.
Regulators acted different. Sometimes accepted the study without deficiencies, sometimes asked really for 95% CIs. Fortunately in all cases I remember 90% CI's and 95% CI's gave the same answer: BE proven. That's because such cases, pilot BE studies with sample sizes around 12 with positive outcome, only occure for very small variabilities, CV around 10%.

Thus in contrast to nobody it would be reasonable to start a discussion with the authority concerning your point 1. But I know of course that discussing with regulatory authorities is NIL.
Answer their questions without question their questions.

Regards,

Detlew
Relaxation
Junior

Germany,
2018-02-02 11:12

@ d_labes
Posting: # 18331
Views: 7,394

## Deficiencies

Dear All.

Ignoring the risk that I may got it totally wrong, but from my experience (as a non-statistician ) another phenomenon of doublethink may fit to

» Point 2. In the light of the combination of two BE statements (tablet vs. reference or capsule vs. reference) this is combination with OR. If, and only if a global statement is here appropriate. IMHO here both hypotheses are standing for it's own.

In current discussions on this topic the general opinion around here is quite clear: testing more than one option vs. Reference is multiple testing because you have "more than one shot"  adjust the ALPHA.
On the other hand, in reality more often than not, sponsors will then simply conduct two studies. I was never brave enough to comment, that this would be "more than one shoot", too, and we should adjust the ALPHA in each study.

But seriously, why should testing alternatives in one study require a punishment and testing in seperate studies not. Because I pay my fee in doubled overhead study costs? Or because I don't have to tell anybody of the "other study" during application ?

Best regards,

Relaxation.
nobody
Senior

2018-02-02 12:49

@ Relaxation
Posting: # 18332
Views: 7,344

## Deficiencies

This alpha-adjustment = get punished for touching the same data (!) twice has a bit the touch of quantum physics. You will accept it, but it's not real intuitive, in the world we (macroscopically) live in...

Kindest regards, nobody
Helmut
Hero

Vienna, Austria,
2018-02-02 16:14

@ Relaxation
Posting: # 18333
Views: 7,333

## Deficiencies

Hi Relaxation,

» But seriously, why should testing alternatives in one study require a punishment and testing in seperate studies not. Because I pay my fee in doubled overhead study costs? Or because I don't have to tell anybody of the "other study" during application ?

IMHO, you have to submit the study’s synopsis.

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
Relaxation
Junior

Germany,
2018-02-02 19:41

@ Helmut
Posting: # 18334
Views: 7,734

## Deficiencies

» » But seriously, why should testing alternatives in one study require a punishment and testing in seperate studies not. Because I pay my fee in doubled overhead study costs? Or because I don't have to tell anybody of the "other study" during application ?
»
» IMHO, you have to submit the study’s synopsis.

Hello Helmut.

That was what I thought myself (and would also argue in favour of by gut feeling). But at least in the EU I think we are asked to submit these for the pilot studies conducted with the formulation you apply for. As far as I remember, it is also asked for synopses from other studies during formulation development, but my guess would be that there might be a grey area in the discussion, whether a study conducted with Alternative 1 would be part of the development of Alternative 2.
I personally would argue in favour of "full disclosure", but I generally a lot anyway.

P.S.: I looked it up in the BE-GL: all relevant studies ... comparing the formulation applied for (i.e. same composition and manufacturing process) with a reference medicinal product marketed in the EU.
Would apply to the "tablet vs. reference and capsule vs. reference" example brough up earlier, wouldn't it? Two shots.

Best regards and a nice weekend to everybody,

Relaxation.
Astea
Regular

Russia,
2018-02-02 21:45

@ Relaxation
Posting: # 18335
Views: 7,280

## alpha... where is omega?

Dear Smart People!

I am suffering trying to understand the problems and perspectives of alpha-adjustment.
Wherever I look I see TIE inflation...
For HVD:
• EMA SABE seemed to have problems with TIE for CV in 25-45%
• FDA RSABE seemed to have problems for CV around 30%
For well-known adaptive designs (Potvin, Xu...) TIE also behaves badly...
TIE may be also inflated by evaluating different methods for PK metrics (when one of them turns to be overpowered - as in the case of adaptive design or different CI for two Cmax and AUC).
I suspect TIE will be also inflated in studies of NTDs also (by using FDA approach or by using different confidence limits for two metrics).
Now you talk about higher-order design and dose-proportional studies...

So... Are there any ways to deal with it excepting the bright idea of iteratively adjusted alpha? While looking through the literature I've found only some suggestions of modificating ABE (with new procedures or nonlinear CI limits) or alternatives for ABE (like GSD or Two-stage designs)...

1. Knahl SIE, Lang B, Fleischer F, Kieser M., A comparison of group sequential and fixed sample size designs for bioequivalence trials with highly variable drugs, J Clin Pharmacol, 2018, doi:10.1007/s00228-018-2415-7.
2. Molins E., Cobo E., Ocaña J. Two-stage designs versus European scaled average designs in bioequivalence studies for highly variable drugs: Which to choose? Statistics in Medicine, V. 36, I. 30, pp 4777–4788, 2017 doi:10.1002/sim.7452.
Helmut
Hero

Vienna, Austria,
2018-02-02 23:39

@ Astea
Posting: # 18336
Views: 7,243

## α and no ω

Hi Astea,

» I am suffering trying to understand the problems and perspectives of alpha-adjustment.

You are not alone.

» Wherever I look I see TIE inflation...
» For HVD:
»   – FDA RSABE seemed to have problems for CV around 30%

Only ≤30% (see there).

» For well-known adaptive designs (Potvin, Xu...) TIE also behaves badly...

For most of them, not at all. Ones with a slight (!) inflation can be handled be more adjustment. Xu is fine.

» TIE may be also inflated by evaluating different methods for PK metrics (when one of them turns to be overpowered - as in the case of adaptive design or different CI for two Cmax and AUC).

Theoretically IUT should protect us. Benjamin and Detlew are working on a new function `power.2TOST.sim()` and updated `sampleN.2TOST()` in `PowerTOST`. As expected the overall TIE is much lower than the single ones.

» I suspect TIE will be also inflated in studies of NTDs also (by using FDA approach or by using different confidence limits for two metrics).

Might well be.

» Now you talk about higher-order design and dose-proportional studies...

That’s an endless story.

» So... Are there any ways to deal with it excepting the bright idea of iteratively adjusted alpha?

THX for calling it bright! For reference-scaling a new method* by the two Lászlós control the TIE much better than RSABE/ABEL – but only for full replicate designs. Yet another good reason to avoid the bloody partial replicate. Detlew already implemented a new function `power.RSABE2L.sdsims()` in `PowerTOST`. You need the development version on GitHub to run this code:
```library(PowerTOST) CV     <- 0.3 n      <- 24 design <- "2x2x4" U.EMA  <- scABEL(CV, regulator="EMA")[["upper"]] U.FDA  <- scABEL(CV, regulator="FDA")[["upper"]] st     <- proc.time()[[3]] TIE    <- data.frame(method=c("EMA ABEL", "EMA ABEL adj", "FDA RSABE",                               "FDA RSABE adj", "2L FDA", "2L Hyslop",                               "2L exact"),                      TIE=rep(NA, 7), stringsAsFactors=FALSE) res    <- scABEL.ad(CV=CV, theta0=U.EMA, n=n, design=design,                     regulator="EMA", print=FALSE, sdsims=TRUE, nsims=1e6) TIE[1, 2] <- res[["TIE.unadj"]] TIE[2, 2] <- res[["TIE.adj"]] res    <- scABEL.ad(CV=CV, theta0=U.FDA, n=n, design=design,                     regulator="FDA", print=FALSE, nsims=1e6) TIE[3, 2] <- res[["TIE.unadj"]] TIE[4, 2] <- res[["TIE.adj"]] if (as.character(packageVersion("PowerTOST")) >= "1.4.6.9000") {   TIE[5, 2] <- power.RSABE2L.sds(CV=CV, theta0=U.FDA, n=n, design=design,                                  SABE_test="hyslop", nsims=1e6)   TIE[6, 2] <- power.RSABE2L.sds(CV=CV, theta0=U.FDA, n=n, design=design,                                  SABE_test="fda", nsims=1e6)   TIE[7, 2] <- power.RSABE2L.sds(CV=CV, theta0=U.FDA, n=n, design=design,                                  SABE_test="exact", nsims=1e6) } rt <- proc.time()[[3]]-st print(TIE, row.names=FALSE); cat("Runtime:", round(rt/60, 1), "minutes\n")         method      TIE       EMA ABEL 0.080639   EMA ABEL adj 0.050000      FDA RSABE 0.133510  FDA RSABE adj 0.049999         2L FDA 0.062536      2L Hyslop 0.063513       2L exact 0.066088 Runtime: 4.6 minutes```

» While looking through the literature I've found only some suggestions of modificating ABE (with new procedures or nonlinear CI limits) or alternatives for ABE (like GSD or Two-stage designs)...

»
1. Knahl SIE, Lang B, Fleischer F, Kieser M. A comparison of group sequential and fixed sample size designs for bioequivalence trials with highly variable drugs. Eur J Clin Pharmacol. 2018;74(5):549–59. doi:10.1007/s00228-018-2415-7.
»
2. Molins E., Cobo E., Ocaña J. Two-stage designs versus European scaled average designs in bioequivalence studies for highly variable drugs: Which to choose? Stat Med. 2017;36(30):4777–4788. doi:10.1002/sim.7452.

One of the authors of [1] is user Ben in the Forum and a co-author of `PowerTOST`. Incidentally I reviewed both papers. Demanding but great fun at the end.

• Tóthfalusi L, Endrényi L. Algorithms for evaluating reference scaled average bioequivalence: Power, bias, and consumer risk. Stat Med. 2017;36(27):4378–90. doi:10.1002/sim.7440.

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
d_labes
Hero

Berlin, Germany,
2018-02-04 12:40
(edited by d_labes on 2018-02-04 13:01)

@ Helmut
Posting: # 18340
Views: 7,064

## TIE for NTIDs

Dear Astea, dear Helmut,

» » I suspect TIE will be also inflated in studies of NTDs also (by using FDA approach or by using different confidence limits for two metrics).
»
» Might well be.

There is no reason to speculate. Fire up the all-in-one device suitable for every purpose `PowerTOST`
and use function `power.NTIDFDA()`.

Try this (for the homoscedastic case swR=swT):
```library(PowerTOST) # number of subjects n <- 12 design <- "2x2x4" # theta is the reguatory constant for widening/shrinking the acceptance limits # (see Warfarin guidance, but note: the theta there is theta^2) theta <- -(log(0.9)/0.1) # function to obtain the upper limit of the implied acceptance range UL <- function(CV, theta){   upper <- exp(theta* CV2se(CV))   if (upper>1.25) upper <- 1.25   upper } CVs <- seq(0.03, 0.4, by=0.01) # reserve memory GMR <- vector("numeric", length= length(CVs)) TIE <- vector("numeric", length= length(CVs)) ns  <- vector("numeric", length= length(CVs)) for (i in seq_along(CVs)){   GMR[i] <- UL(CVs[i], theta)   ns[i]  <- n   # instead of a constant n we may use n obtained via sampleN.NTIDFDA()   # then uncomment next line   # ns[i]  <- sampleN.NTIDFDA(CV=CVs[i], print=FALSE, details=FALSE)[["Sample size"]]   TIE[i] <- power.NTIDFDA(CV=CVs[i], theta0 = GMR[i], n=n, design=design, nsims=1E6) } print(data.frame(CV=CVs, GMR=GMR, n=ns, TIE=TIE), row.names=FALSE)```

With n=12 we get:
```   CV      GMR      TIE  0.03 1.032106 0.049529  0.04 1.043027 0.049529  0.05 1.054058 0.049529  0.06 1.065197 0.049529  0.07 1.076443 0.049529  0.08 1.087796 0.049529  0.09 1.099256 0.049529  0.10 1.110820 0.049529  0.11 1.122489 0.049529  0.12 1.134261 0.049529  0.13 1.146135 0.049513  0.14 1.158110 0.049401  0.15 1.170186 0.048949  0.16 1.182360 0.047774  0.17 1.194633 0.045520  0.18 1.207001 0.041949  0.19 1.219466 0.037606  0.20 1.232024 0.032688  0.21 1.244675 0.027556  0.22 1.250000 0.027744  0.23 1.250000 0.031157  0.24 1.250000 0.034106  0.25 1.250000 0.036487  0.26 1.250000 0.038232  0.27 1.250000 0.039669  0.28 1.250000 0.040685  0.29 1.250000 0.041398  0.30 1.250000 0.041859```

But if we use n obtained to have a targetpower of 0.8, using theta0=0.975 we get:
```  0.03 214 1.032106 0.051258  0.04 54 1.043027 0.051405  0.05 32 1.054058 0.051804  0.06 24 1.065197 0.051418  0.07 22 1.076443 0.051395  0.08 20 1.087796 0.051232  0.09 18 1.099256 0.051158  0.10 18 1.110820 0.051158  0.11 16 1.122489 0.050734  0.12 16 1.134261 0.050734  0.13 16 1.146135 0.050732  0.14 16 1.158110 0.050705  0.15 16 1.170186 0.050552  0.16 16 1.182360 0.049877  0.17 16 1.194633 0.048183  0.18 16 1.207001 0.044852  0.19 16 1.219466 0.040159  0.20 16 1.232024 0.034550  0.21 16 1.244675 0.028581  0.22 16 1.250000 0.028871  0.23 16 1.250000 0.033203  0.24 16 1.250000 0.036778  0.25 16 1.250000 0.039643  0.26 16 1.250000 0.041844  0.27 18 1.250000 0.044551  0.28 18 1.250000 0.045817  0.29 18 1.250000 0.046739  0.30 20 1.250000 0.048178```
Indeed a small alpha-inflation at low CVs'.
If we were Potvin-adepts this is a negligible alpha inflation, namely below 0.052.

Regards,

Detlew
Astea
Regular

Russia,
2018-02-04 20:04

@ d_labes
Posting: # 18342
Views: 7,102

## TIE for NTIDs

Dear Helmut! Thank you for the rectification! Till you and Detlew care about it, the world can breathe calmly!

Dear Detlew!

And what about the different CI for two metrics? Can you invent smthg like Power2.RSABE or Power2.NTIDFDA or it is a stupid idea?

My thoughts are as follows: according to some product specific EMA guideline (sirolimus for example) we should shorten the limit only for AUC but not for Cmax. May it leed to TIE inflation or not?

For an extreme example, suppose we calculate sample size, basing on CV 25% (I understand that NTID should not have large variance but nevertherless): `sampleN.TOST(CV=0.25, theta0=0.975, theta1=0.9, theta2=1.11, design="2x2")`
122 volunteers!

Then by using Power.2TOST for CV=0.3 I get TIE very slightly upper than 0.05
``` power.2TOST(CV=c(0.3,0.25), n=122, theta1=c(0.8, 0.9), theta2=c(1.25, 1.11), theta0=c(1, 1.11), rho=0) [1] 0.05000002 ```
In this case the diference from 0.05 is negligible, but may be one could find more rude example? Or am I using or interpretate `power.2TOST` uncorrectly?

» Try this (for the homoscedastic case swR=swT):
And what to do if variances are different (non-negotiable word heteroscedasticity)?
Helmut
Hero

Vienna, Austria,
2018-02-05 01:01

@ Astea
Posting: # 18343
Views: 7,117

## TIE for NTIDs

Hi Astea,

» My thoughts are as follows: according to some product specific EMA guideline (sirolimus for example) we should shorten the limit only for AUC but not for Cmax. May it leed to TIE inflation or not?
»
» Then by using Power.2TOST for CV=0.3 I get TIE very slightly upper than 0.05
» `power.2TOST(CV=c(0.3,0.25), n=122, theta1=c(0.8, 0.9), theta2=c(1.25, 1.11), theta0=c(1, 1.11), rho=0)``» [1] 0.05000002 `
» In this case the diference from 0.05 is negligible, but may be one could find more rude example? Or am I using or interpretate `power.2TOST` uncorrectly?

You are using it correctly but this function underwent a minor revision. In the development version 1.4.6.9000 you would get
`[1] 0.05003`
or better with `nsims=1e6` for the TIE:
`[1] 0.050059`
IMHO, AUC and Cmax generally are highly correlated.
```power.2TOST(CV=c(0.3, 0.25), n=122, theta1=c(0.8, 0.9),             theta2=c(1.25, 1/0.9), theta0=c(1, 1/0.9),             rho=0.9, nsims=nsims) [1] 0.050092```

» » Try this (for the homoscedastic case swR=swT):
» And what to do if variances are different (non-negotiable word heteroscedasticity)?

Extending Detlew’s code for swT=2swR:
```library(PowerTOST) design <- "2x2x4" theta  <- -(log(0.9)/0.1) nsims  <- 1e6 bt.sig <- binom.test(0.05*nsims, nsims, alternative="less")\$conf.int[2] sw.r   <- 2     # ratio of swT/swR min.n  <- FALSE # TRUE to force FDA's minimum sample of 24 UL <- function(CVwR, theta) {   upper <- exp(theta* CV2se(CVwR))   if (upper > 1.25) upper <- 1.25   return(upper) } CVwR <- seq(0.03, 0.25, 0.01) CVwT <- se2CV(CV2se(CVwR)*sw.r) CVs  <- data.frame(CVwT, CVwR, stringsAsFactors=FALSE) res  <- cbind(CVs, n=NA, forced=FALSE, GMR=NA, TIE=NA,               signif=" n. s.", stringsAsFactors=FALSE) for (j in seq_along(CVwR)){   res[j, "GMR"] <- UL(CVs[j, "CVwR"], theta)   res[j, "n"]   <- sampleN.NTIDFDA(CV=as.numeric(CVs[j, ]), print=FALSE,                                    details=FALSE)[["Sample size"]]   if (min.n & as.numeric(res[j, "n"]) < 24) {     res[j, "n"]      <- 24     res[j, "forced"] <- TRUE   }   res[j, "TIE"] <- power.NTIDFDA(CV=as.numeric(CVs[j, ]),                                  theta0=as.numeric(res[j, "GMR"]),                                  n=as.numeric(res[j, "n"]),                                  design=design, nsims=nsims)   res[j, "CVwT"] <- sprintf("%.4f", as.numeric(res[j, "CVwT"]))   res[j, "CVwR"] <- sprintf("%.4f", as.numeric(res[j, "CVwR"]))   if (res[j, "TIE"] > bt.sig) res[j, "signif"] <- "p<0.05" } if (!min.n) res <- res[ , -which(names(res) == "forced")] cat("swT/swR:", sw.r, "\n"); print(res, row.names=FALSE) swT/swR: 2    CVwT   CVwR   n      GMR      TIE signif  0.0600 0.0300 430 1.032106 0.050580 p<0.05  0.0801 0.0400 156 1.043027 0.048675  n. s.  0.1002 0.0500 134 1.054058 0.048292  n. s.  0.1203 0.0600 130 1.065197 0.047557  n. s.  0.1405 0.0700 128 1.076443 0.047594  n. s.  0.1608 0.0800 128 1.087796 0.047594  n. s.  0.1811 0.0900 128 1.099256 0.047594  n. s.  0.2015 0.1000 128 1.110820 0.047594  n. s.  0.2220 0.1100 128 1.122489 0.047594  n. s.  0.2426 0.1200 128 1.134261 0.047594  n. s.  0.2633 0.1300 128 1.146135 0.047594  n. s.  0.2841 0.1400 128 1.158110 0.047594  n. s.  0.3051 0.1500 128 1.170186 0.047594  n. s.  0.3262 0.1600 128 1.182360 0.047594  n. s.  0.3474 0.1700 128 1.194633 0.047594  n. s.  0.3688 0.1800 128 1.207001 0.047572  n. s.  0.3904 0.1900 128 1.219466 0.047074  n. s.  0.4121 0.2000 128 1.232024 0.043871  n. s.  0.4341 0.2100 128 1.244675 0.035001  n. s.  0.4562 0.2200 128 1.250000 0.034496  n. s.  0.4785 0.2300 128 1.250000 0.038751  n. s.  0.5011 0.2400 128 1.250000 0.039936  n. s.  0.5239 0.2500 128 1.250000 0.040172  n. s.```

For swT=swR:
```swT/swR: 1    CVwT   CVwR   n      GMR      TIE signif  0.0300 0.0300 214 1.032106 0.051258 p<0.05  0.0400 0.0400  54 1.043027 0.051405 p<0.05  0.0500 0.0500  32 1.054058 0.051804 p<0.05  0.0600 0.0600  24 1.065197 0.051418 p<0.05  0.0700 0.0700  22 1.076443 0.051395 p<0.05  0.0800 0.0800  20 1.087796 0.051232 p<0.05  0.0900 0.0900  18 1.099256 0.051158 p<0.05  0.1000 0.1000  18 1.110820 0.051158 p<0.05  0.1100 0.1100  16 1.122489 0.050734 p<0.05  0.1200 0.1200  16 1.134261 0.050734 p<0.05  0.1300 0.1300  16 1.146135 0.050732 p<0.05  0.1400 0.1400  16 1.158110 0.050705 p<0.05  0.1500 0.1500  16 1.170186 0.050552 p<0.05  0.1600 0.1600  16 1.182360 0.049877  n. s.  0.1700 0.1700  16 1.194633 0.048183  n. s.  0.1800 0.1800  16 1.207001 0.044852  n. s.  0.1900 0.1900  16 1.219466 0.040159  n. s.  0.2000 0.2000  16 1.232024 0.034550  n. s.  0.2100 0.2100  16 1.244675 0.028581  n. s.  0.2200 0.2200  16 1.250000 0.028871  n. s.  0.2300 0.2300  16 1.250000 0.033203  n. s.  0.2400 0.2400  16 1.250000 0.036778  n. s.  0.2500 0.2500  16 1.250000 0.039643  n. s.```

And for swT=½swR:
```swT/swR: 0.5    CVwT   CVwR   n      GMR      TIE signif  0.0150 0.0300 160 1.032106 0.051551 p<0.05  0.0200 0.0400  40 1.043027 0.052274 p<0.05  0.0250 0.0500  24 1.054058 0.052155 p<0.05  0.0300 0.0600  18 1.065197 0.052223 p<0.05  0.0350 0.0700  16 1.076443 0.051795 p<0.05  0.0400 0.0800  14 1.087796 0.051311 p<0.05  0.0449 0.0900  14 1.099256 0.051311 p<0.05  0.0499 0.1000  12 1.110820 0.050936 p<0.05  0.0549 0.1100  12 1.122489 0.050936 p<0.05  0.0598 0.1200  12 1.134261 0.050935 p<0.05  0.0648 0.1300  12 1.146135 0.050930 p<0.05  0.0697 0.1400  12 1.158110 0.050855 p<0.05  0.0747 0.1500  12 1.170186 0.050450 p<0.05  0.0796 0.1600  12 1.182360 0.049208  n. s.  0.0845 0.1700  12 1.194633 0.046557  n. s.  0.0895 0.1800  10 1.207001 0.040180  n. s.  0.0944 0.1900  10 1.219466 0.035008  n. s.  0.0993 0.2000  10 1.232024 0.029501  n. s.  0.1042 0.2100  10 1.244675 0.024305  n. s.  0.1090 0.2200  10 1.250000 0.024381  n. s.  0.1139 0.2300  12 1.250000 0.029092  n. s.  0.1187 0.2400  12 1.250000 0.032756  n. s.  0.1236 0.2500  12 1.250000 0.035953  n. s.```

Apart from the CVs there is a dependency of the TIE on the sample size (common to the FDA’s scaling methods). If we force the minimum sample size to 24 dosed subjects (required by the FDA for RSABE) we get with `min.n <- TRUE`:
```swT/swR: 1    CVwT   CVwR   n forced      GMR      TIE signif  0.0300 0.0300 214  FALSE 1.032106 0.051258 p<0.05  0.0400 0.0400  54  FALSE 1.043027 0.051405 p<0.05  0.0500 0.0500  32  FALSE 1.054058 0.051804 p<0.05  0.0600 0.0600  24  FALSE 1.065197 0.051418 p<0.05  0.0700 0.0700  24   TRUE 1.076443 0.051418 p<0.05  0.0800 0.0800  24   TRUE 1.087796 0.051418 p<0.05  0.0900 0.0900  24   TRUE 1.099256 0.051418 p<0.05  0.1000 0.1000  24   TRUE 1.110820 0.051418 p<0.05  0.1100 0.1100  24   TRUE 1.122489 0.051418 p<0.05  0.1200 0.1200  24   TRUE 1.134261 0.051418 p<0.05  0.1300 0.1300  24   TRUE 1.146135 0.051418 p<0.05  0.1400 0.1400  24   TRUE 1.158110 0.051415 p<0.05  0.1500 0.1500  24   TRUE 1.170186 0.051390 p<0.05  0.1600 0.1600  24   TRUE 1.182360 0.051193 p<0.05  0.1700 0.1700  24   TRUE 1.194633 0.050291  n. s.  0.1800 0.1800  24   TRUE 1.207001 0.047754  n. s.  0.1900 0.1900  24   TRUE 1.219466 0.043035  n. s.  0.2000 0.2000  24   TRUE 1.232024 0.036599  n. s.  0.2100 0.2100  24   TRUE 1.244675 0.029193  n. s.  0.2200 0.2200  24   TRUE 1.250000 0.029453  n. s.  0.2300 0.2300  24   TRUE 1.250000 0.034602  n. s.  0.2400 0.2400  24   TRUE 1.250000 0.038978  n. s.  0.2500 0.2500  24   TRUE 1.250000 0.042264  n. s. swT/swR: 0.5    CVwT   CVwR   n forced      GMR      TIE signif  0.0150 0.0300 160  FALSE 1.032106 0.051551 p<0.05  0.0200 0.0400  40  FALSE 1.043027 0.052274 p<0.05  0.0250 0.0500  24  FALSE 1.054058 0.052155 p<0.05  0.0300 0.0600  24   TRUE 1.065197 0.052155 p<0.05  0.0350 0.0700  24   TRUE 1.076443 0.052155 p<0.05  0.0400 0.0800  24   TRUE 1.087796 0.052155 p<0.05  0.0449 0.0900  24   TRUE 1.099256 0.052155 p<0.05  0.0499 0.1000  24   TRUE 1.110820 0.052155 p<0.05  0.0549 0.1100  24   TRUE 1.122489 0.052155 p<0.05  0.0598 0.1200  24   TRUE 1.134261 0.052155 p<0.05  0.0648 0.1300  24   TRUE 1.146135 0.052155 p<0.05  0.0697 0.1400  24   TRUE 1.158110 0.052155 p<0.05  0.0747 0.1500  24   TRUE 1.170186 0.052144 p<0.05  0.0796 0.1600  24   TRUE 1.182360 0.052008 p<0.05  0.0845 0.1700  24   TRUE 1.194633 0.051177 p<0.05  0.0895 0.1800  24   TRUE 1.207001 0.048438  n. s.  0.0944 0.1900  24   TRUE 1.219466 0.042814  n. s.  0.0993 0.2000  24   TRUE 1.232024 0.034901  n. s.  0.1042 0.2100  24   TRUE 1.244675 0.025993  n. s.  0.1090 0.2200  24   TRUE 1.250000 0.026019  n. s.  0.1139 0.2300  24   TRUE 1.250000 0.031621  n. s.  0.1187 0.2400  24   TRUE 1.250000 0.036474  n. s.  0.1236 0.2500  24   TRUE 1.250000 0.040374  n. s.```
Hence, the TIE gets larger for studies forced to n 24 as compared to the ones designed for the target power.

Edit: Corrected code there.

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
d_labes
Hero

Berlin, Germany,
2018-02-05 16:40

@ Helmut
Posting: # 18354
Views: 6,994

## TIE for NTIDs

Dear Helmut,

thank you for that piece of work beyond the call of duty.
Only one nitpicking:

I think the entries under `signif`
`p<0.05` should read `p>0.05`.

Edit: Congratulations for post #18,000. [Helmut]

Regards,

Detlew
Helmut
Hero

Vienna, Austria,
2018-02-05 17:49

@ d_labes
Posting: # 18355
Views: 6,956

## TIE for NTIDs

Dear Detlew,

» Only one nitpicking:
»
» I think the entries under `signif`
» `p<0.05` should read `p>0.05`.

Hhm, why? I’m testing at the 5% level for a significant inflation. The limit for 106 sim’s is
```binom.test(0.05*1e6, 1e6, alternative="less")\$conf.int[2] [1] 0.05035995```
Hence, any TIE > this value should be significant.

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
d_labes
Hero

Berlin, Germany,
2018-02-05 22:17

@ Helmut
Posting: # 18359
Views: 6,933

## TIE for NTIDs

Dear Helmut,

» » Only one nitpicking:
» »
» » I think the entries under `signif`
» » `p<0.05` should read `p>0.05`.
»
» Hhm, why? I’m testing at the 5% level for a significant inflation. The limit for 106 sim’s is
» `binom.test(0.05*1e6, 1e6, alternative="less")\$conf.int[2]``» [1] 0.05035995`
» Hence, any TIE > this value should be significant.

That's totally correct. But the entry suggest for me that the TIE (with values >0.05) is significant <0.05. Maybe it's my misunderstanding. To avoid this many statisticians state "significant at alpha=0.05". But then the Hypotheses have to be given else.

Regards,

Detlew
Helmut
Hero

Vienna, Austria,
2018-02-06 12:34

@ d_labes
Posting: # 18363
Views: 6,826

## TIE for NTIDs

Dear Detlew,

» […] the entry suggest for me that the TIE (with values >0.05) is significant <0.05. Maybe it's my misunderstanding. To avoid this many statisticians state "significant at alpha=0.05". But then the Hypotheses have to be given else.

I see!

Change lines 17 and 32 from
```res  <- cbind(CVs, n=NA, forced=FALSE, GMR=NA, TIE=NA,               signif=" n. s.", stringsAsFactors=FALSE)   if (res[j, "TIE"] > bt.sig) res[j, "signif"] <- "p<0.05"```
to
```res  <- cbind(CVs, n=NA, forced=FALSE, GMR=NA, TIE=NA,               "signif >0.05"="n. s.", stringsAsFactors=FALSE)   if (res[j, "TIE"] > bt.sig)     res[j, "signif >0.05"] <- "at alpha=0.05"```
Will give
```swT/swR: 2    CVwT   CVwR   n      GMR      TIE  signif >0.05  0.0600 0.0300 430 1.032106 0.050580 at alpha=0.05  0.0801 0.0400 156 1.043027 0.048675         n. s.  ...```

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
d_labes
Hero

Berlin, Germany,
2018-02-05 16:35
(edited by d_labes on 2018-02-05 22:04)

@ Astea
Posting: # 18353
Views: 6,964

## TIE for NTIDs

Dear Astea!

» And what about the different CI for two metrics? Can you invent smthg like Power2.RSABE or Power2.NTIDFDA or it is a stupid idea?

If time allows. But pensioners never have time .

From theory the intersection-union principle should protect us from alpha-inflation, as long as the single tests to be combined also have size 0.05. Since this isn't the case for RSABE for NTIDs, as Helmut has shown in his post, an alpha inflation has to be supposed.
Thus `power2.NTIDFDA()`, or whatever it would be called, only had the purpose to show with numbers that the TIE is not <=0.05, as ist should be. Educational purpose only. Duno if all the effort and labour to implement sumfink like `power2.NTIDFDA()` is worth that aim.

» For an extreme example, suppose we calculate sample size, basing on CV 25% (I understand that NTID should not have large variance but nevertherless): `sampleN.TOST(CV=0.25, theta0=0.975, theta1=0.9, theta2=1.11, design="2x2")`
» 122 volunteers!

This sample size estimation is for the EMA recommendation to deal with NTIDs, namely to shrinken the BE acceptance range to 0.9 ... 1.1111...

The FDA reference scabled ABE method uses the conventional limits 0.8 ... 1.25 from an CV ~ 0.214 on and higher. Below that the acceptance ranges are tightened, at swR=0.1 f.i. they are 0.9 ... 1.1111...
This leads of course to different sample sizes. Use `sampleN.NTIDFDA()` instead.

Moreover, the FDA method requires a replicate design in which both CVwT and CVwR are estimable. That is a full replicate "2x2x4" or a 3-period replicate "2x2x3" with sequences TRT | RTR. Although the latter is not mentioned in the Warfarine guidance.
Thus your design used in the sample size estimation, "2x2", is not possible.

» Then by using Power.2TOST for CV=0.3 I get TIE very slightly upper than 0.05
» ` power.2TOST(CV=c(0.3,0.25), n=122, theta1=c(0.8, 0.9), theta2=c(1.25, 1.11), theta0=c(1, 1.11), rho=0)``» [1] 0.05000002 `

What you here calculate is not the TIE. Finding the TIE having more than one test is much more complicated.
There are other values for theta0 which also belong to the Null "bioinequivalence", f.i. theta0 = c(0.8, 1) or theta0 = c(1.25, 1) and so on and so on. Over all these sets the maximum (supremum) of power has to be determined to get the TIE.
This is implemented in the function `type1error.2TOST()`.
Be warned: The run-time of this function in the development version, after changing to simulations as basic concept, is horrible . Some minutes are the normal case.

Hope this doesn't cause headache to you. Two or more TOSTs is for hardcore statisticians only. And they also have difficulties as I know (I'm not a statistician).

Regards,

Detlew
Astea
Regular

Russia,
2018-02-05 17:52
(edited by Astea on 2018-02-05 18:08)

@ d_labes
Posting: # 18356
Views: 6,962

## bow TIE for NTIDs

Dear Helmut! Thank you for clarification!

Dear Detlew!

Sorry for mixing terms. In case of Power.2TOST I meant EMA approach (I've mentioned sirolimus guideline) for two metrics with diffirent but written in stone CI limits. I've turned to this case because I didn't find the way to "play with numbers" via power2.NTIDS cause it doesn't exist. I agree with you that it should have only educational purpose - to show slightly TIE inflation for NTIDs for completeness. That is low TIE inflation may be a common phenomenon.

» This is implemented in the function `type1error.2TOST()`.
I tried this:
```  type1error.2TOST(CV=c(0.3,0.25), n=122, theta1=c(0.8, 0.9), theta2=c(1.25, 1.11), rho=0.9, details = FALSE) [1] 0.05000015 Warning: Result of maximization over nullset may not be reliable. ```
» Hope this doesn't cause headache to you. Two or more TOSTs is for hardcore statisticians only. And they also have difficulties as I know (no, no, I'm not a statistician, but others among the authors of `PowerTOST`).
The best statisticians I've ever met told me they are not actually statisticians. Neither am I...

P.S. 111.00 instead of logical 111.11 because it was written in the mentioned guideline. Increadible rounding methods!
Helmut
Hero

Vienna, Austria,
2018-02-05 18:10

@ Astea
Posting: # 18357
Views: 7,047

## bow TIE for NTIDs

Hi Astea,

» I tried this:
» `» type1error.2TOST(CV=c(0.3,0.25), n=122, theta1=c(0.8, 0.9), theta2=c(1.25, 1.11), rho=0.9, details = FALSE)» [1] 0.05000015» Warning:» Result of maximization over nullset may not be reliable.`

Another function under revision… Starting with 1.4.6.9000 subject simulations are performed which take substantially longer than with the previous code. The approach used in ≤1.4.6 (based on the 4-dimensio­nal t-distribution) was flawed.
In the new version with the argument `details=TRUE` showing the TIE for all eight intersection null sets:
```type1error.2TOST(CV=c(0.3, 0.25), n=122, theta1=c(0.8, 0.9),                        theta2=c(1.25, 1/0.9), rho=0.9, details=TRUE)```

```1e+06 simulations. Time consumed (secs)    user  system elapsed  165.97   25.16  191.57   Intersection null P(Type I Error) theta0 #1 theta0 #2 1      H_A01 n H_Ca        0.049639 0.8000000 0.9494219 2      H_A02 n H_Ca        0.049800 1.2500000 1.0630689 3      H_Aa n H_C01        0.050149 0.9948235 0.9000000 4      H_Aa n H_C02        0.050005 0.9775390 1.1111111 5     H_A01 n H_C01        0.031504 0.8000000 0.9000000 6     H_A01 n H_C02        0.000000 0.8000000 1.1111111 7     H_A02 n H_C01        0.000000 1.2500000 0.9000000 8     H_A02 n H_C02        0.031817 1.2500000 1.1111111```

» The best statisticians I've ever met told me they are not actually statisticians. Neither am I...

Welcome to the club!

» P.S. 111.00 instead of logical 111.11 because it was written in the mentioned guideline.

Where did you find that? 90.00–111.11% for AUC0–t of sirolimus, AUC0–72 of tacrolimus and everolimus.

» Increadible rounding methods!

I’m not willing to accept 111.11%. Heck, with an acceptable ∆ of 10% we get 100(1–∆)–1=111.11 – nothing else! I will not eradicate my second-grade math only cause this number was proclaimed ex cathedra as truth by the omniscient almighty oracle. Had to swallow already rounding of the CI. Double rounding? Gimme a break!

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
Astea
Regular

Russia,
2018-02-05 19:27

@ Helmut
Posting: # 18358
Views: 6,957

## 111.11 for NTIDs

Dear Helmut!
» Where did you find that?
I have to apologize - it turned out that I reffered to the draft version . In two years the mistape was corrected (or someone improved its rounding skills :)

» I’m not willing to accept 111.11%. Heck, with an acceptable ∆ of 10% we get 100(1–∆)–1=111.11 – nothing else! I will not forget my second-grade math only cause it’s claimed ex cathedra by the oracle. Had to swallow already rounding of the CI. Double rounding? Gimme a break!
Then why do we use 80,00? "Because in the former case the numbers look nicer and are easier to remember
Of course 111.00 is nonsense and should be forgotten.
Helmut
Hero

Vienna, Austria,
2018-02-06 00:12

@ Astea
Posting: # 18361
Views: 6,915

## 111.11 for NTIDs

Hi Astea,

» » I’m not willing to accept 111.11%. Heck, with an acceptable ∆ of 10% we get 100(1–∆)–1=111.11 – nothing else! I will not forget my second-grade math only cause it’s claimed ex cathedra by the oracle. Had to swallow already rounding of the CI. Double rounding? Gimme a break!
» Then why do we use 80,00? "Because in the former case the numbers look nicer and are easier to remember

Yep, I’ve been there.

» Of course 111.00 is nonsense and should be forgotten.

Like 111.11. Every idiot should see that √0.9×0.9–1 = √0.9∕0.9 = 1 which is not the fucking same as
0.9×1.1111 = 0.9999949999874999374996093722656…
In R-speak:
```identical(sqrt(0.9*0.9^-1), 1) [1] TRUE identical(sqrt(0.9*1.1111), 1) [1] FALSE```
Heck, we want the acceptance range in log-scale to be symmetrical around Zero and not –5·10–6.

Cheers,
Helmut Schütz

The quality of responses received is directly proportional to the quality of the question asked. ☼
Science Quotes
d_labes
Hero

Berlin, Germany,
2018-02-05 22:33

@ Astea
Posting: # 18360
Views: 6,933

## bow TIE for NTIDs

Dear Astea,

» I tried this:
» `type1error.2TOST(CV=c(0.3,0.25), n=122, theta1=c(0.8, 0.9), theta2=c(1.25, 1.11), rho=0.9, details = FALSE)``» [1] 0.05000015» Warning:» Result of maximization over nullset may not be reliable. » `

This warning in the old version of that function is result of numerical difficulties in obtaining the supremum over the Nullsets. For an update see Helmut's post.

Regards,

Detlew
Bioequivalence and Bioavailability Forum |  Admin contact
19,154 posts in 4,080 threads, 1,308 registered users;
online 21 (0 registered, 21 guests [including 12 identified bots]).

One can show the following: given any rule, however “fundamental”
or “necessary” for science, there are always circumstances
when it is advisable not only to ignore the rule,
but to adopt its opposite.    Paul Feyerabend

The BIOEQUIVALENCE / BIOAVAILABILITY FORUM is hosted by
Ing. Helmut Schütz