Ken Peh ★ Malaysia, 2013-07-29 21:03 (4290 d 08:52 ago) Posting: # 11117 Views: 6,184 |
|
Dear All, We would like to estimate the power of a BE study that has been completed. The no of subjects enrolled was 28 but 3 dropped out. Hence, left only 25 subjects. In R-Software, we key the data using two different approaches :- No 1 power.TOST(CV=0.29, n=25, theta0=0.95) No 2 power.TOST(CV=0.29, n=25, theta0=0.95, theta1=0.83, theta2=1.09) Which is the right way to key in data ? The first one or the second one ? ![]() Do we have to key in the value of lower and upper BE limit obtained from the study ? Why after putting in the lower and upper BE limit, the power is only about 8% versus 62%. Your input is highly appreciated. Thank you. Regards, Ken Edit: Category changed. [Helmut] |
Helmut ★★★ ![]() ![]() Vienna, Austria, 2013-07-29 23:30 (4290 d 06:25 ago) @ Ken Peh Posting: # 11118 Views: 5,757 |
|
Hi Ken! ❝ We would like to estimate the power of a BE study that has been completed. Oh, is your authority still requiring this? ![]() ❝ Which is the right way to key in data ? The first one or the second one ? No. 1 Since you didn’t type in the lower ( theta1 ) and upper (theta2 ) acceptance limits for bioequivalence, the defaults of 0.80 and 1/0.80=1.25 are used. But if you want you can state them. Try:power.TOST(CV=0.29, n=25, theta0=0.95, theta1=0.80, theta2=1.25) You can play the game the other way ’round: How many subjects would we need for 61.85% power if CV is 29%? sampleN.TOST(CV=0.29, targetpower=0.6185) 26 – not 25 – because in study planning you get always even numbers in a 2×2 design. Note that I did not use theta0 , theta1 , and theta2 because 0.95, 0.80, and 1.25 are the defaults.❝ Do we have to key in the value of lower and upper BE limit obtained from the study ? Why after putting in the lower and upper BE limit, the power is only about 8% versus 62%. No. That would mean asking for the chance to be bioequivalent (with CV 29%, ratio 95%) within limits of 83–109%. This range is much narrower than 80–125% – therefore, you get a much lower power. I guess your values are the confidence limits obtained in the study, right? BTW, BE-limits are based on the maximum acceptable difference, say 20%. In log-scale they are symmetrical around zero [ln(1–0.20), ln(1/(1+0.20)] = [-0.2231, +0.2231]. After back-transformation they are asymetrical around 100% [ℯ-0.2231, ℯ+0.2231] = 80–125%. Hey, that’s upper = 1/lower. ![]() theta1 or theta2 ; the reciprocal would be calculated automatically. Try:power.TOST(CV=0.29, n=25, theta0=0.95, theta1=0.80) For details: require(PowerTOST) @Detlew: Maybe PowerTOST should throw a warning if the input’s theta2 ≠ 1/theta1 (to the precision of the input)? Or is this over the top?— Dif-tor heh smusma 🖖🏼 Довге життя Україна! ![]() Helmut Schütz ![]() The quality of responses received is directly proportional to the quality of the question asked. 🚮 Science Quotes |
ElMaestro ★★★ Denmark, 2013-07-29 23:54 (4290 d 06:01 ago) @ Helmut Posting: # 11119 Views: 5,217 |
|
Hi Helmut, ❝ @Detlew: Maybe PowerTOST should throw a warning if the input’s Nice idea, actually. I am anticipating a borderline grumpy reply like "Take my code and do it better." from him ![]() ![]() — Pass or fail! ElMaestro |
d_labes ★★★ Berlin, Germany, 2013-07-30 13:57 (4289 d 15:58 ago) @ ElMaestro Posting: # 11123 Views: 5,264 |
|
Hi Old sailor, hi Helmut, ❝ ❝ @Detlew: Maybe PowerTOST should throw a warning if the input’s I'm not quite sure if this is worth a warning. It is quite unusual to use other BE acceptance limits than theta2=1/theta1 or vice versa. But ... maybe some guy wishes to do so, for instance if a regulator deemed him to do so, see Canada "Critical dose drugs": The 90% confidence interval of the relative mean AUC* of the test to reference formulation should be within 90.0% to 112.0% inclusive. The implemented algorithm is valid also if theta2 ≠ 1/theta1, I think. ❝ Nice idea, actually. I am anticipating a borderline grumpy reply like "Take my code and do it better." from him Only for those who criticise peanuts while on the other hand stating "not often using PowerTOST". Thank you for not using PowerTOST. Me too since I got stuck with SAS ![]() @Ken: Since you have dropouts I'm sure that your data are unbalanced. Therefore I recommend you the function power2.TOST() .Key in the number of subjects in the sequence groups, the GMR (0.95?) from your study and the CV: power2.TOST(CV=0.29, n=c(14,11), theta0=0.95) I have assumed worse case that all dropouts are from the same sequence group. Note the drop of power compared to your calculation via power.TOST() which assumes balanced studies.— Regards, Detlew |
Ken Peh ★ Malaysia, 2013-07-30 20:53 (4289 d 09:02 ago) @ d_labes Posting: # 11132 Views: 5,107 |
|
Dear Detlew, Thank you very much for your guidance. Will use power2.TOST to recalculate. Regards, Ken |
Ken Peh ★ Malaysia, 2013-07-30 21:03 (4289 d 08:52 ago) @ Helmut Posting: # 11133 Views: 5,111 |
|
Dear Helmut, Thank you very much for your prompt reply. ❝ Oh, is your authority still requiring this? The generic is BE to comparator but the power is less than 80%. Will leave it out and answer when asked by the authority. Regards, Ken |