Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Calculate Sample Size for a Non-inferiority trial

    Hello all,
    Apologies in advance if this is too basic.
    I am trying to calculate the sample size for a non-inferiority trial looking at intervention A vs. Standard of Care (SoC).
    My primary endpoint is the incidence of patients achieving a given quality of life score (QoL), in a given period of time. The endpoint will be measured at 4-time points. Achieving that QoL score at any given time point and maintaining it at the following would be considered as a respondent.
    Thus I'm assuming I should use the power two proportions option
    The estimate for the intervention A is 0.54 and for the SoC is 0.48, power 95%, alpha 5%
    Actually, I'm not sure if I should use the two estimates or 0.54 and assume a minimum difference of example 5% meaning that a difference bigger than 5% between the two groups means that one is superior to the other.

    But if I use the previous and go with:

    power twoproportions 0.54 0.48, test(chi2) power(0.95) alpha(0.05)

    I get a sample size that "seems" too big: 3,604 (not accounting for drop out rate) compared with the literature that's more like around 200

    How should I factor in the non-inferiority part in the calculation above? Should I use a completely different calculation?

    Thank you

  • #2
    FWIW, the same calculation on G*Power gives a sample size of 3,066, so same ballpark. A difference between 0.54 and 0.48 is really a pretty small absolute difference, and for a given absolute difference, when your expected probabilities are close to 50% you are in the worst possible situation for detecting it. So, my intuition is that the the literature that is doing these experiments with N = 200 is either doing something different from what you are planning, or doing it very, very badly.

    As for getting sample size for a non-inferiority trial, I do not believe there is anything in official Stata. There is a user-written command -art- available from SSC that can do this. I have never used it, so I can't say much else about it.

    Comment


    • #3
      (Disclaimer: I know very little about non-inferiority trial, feel free to treat this just as a passerby comment.) I don't think this is the right test. Non-inferiority trial does not test if the two proportions are equal, that's not the correct hypothesis so -power twoproportions- is probably not the right candidate. It's more like difference <= delta (where delta is -5%) vs. difference > delta. In other words, if I understand this business correctly, it can be put as "If 5% lower is considered inferior, given treatment A has 54% cure rate and SoC has 48%, how many people do I need to recruit in order to be sure that treatment A is not worse that SoC by 5%?"

      This site: http://powerandsamplesize.com/Calcul...or-Superiority has listed some formula and reference for computing the sample size. Basing on your case, with power = 0.95, alpha = 0.025 (one-sided), you'd need 534 per group. I've also checked that with PASS, which gave 535 per group. PASS cites a lot more references but they both cited "Chow, S.C., Shao, J., and Wang, H. 2008. Sample Size Calculations in Clinical Research, Second Edition. Chapman & Hall/CRC. Boca Raton, Florida." It may worth take a look?

      Here is a simulation on what I thought could be, using sample size 535 per group:

      Code:
      clear
      input txt
      1
      0
      end
      expand 535
      save temp, replace
      
      capture program drop nit
      program define nit, rclass
      use temp, clear
      
      gen y = 0
      replace y = 1 if (runiform() < .48 & txt == 0)
      replace y = 1 if (runiform() < .54 & txt == 1)
      
      prtest y, by(txt)
      display r(ub_diff)
      return scalar ub = r(ub_diff)
      end
      
      simulate ub = r(ub), reps(1000): nit
      
      gen lt5perc = (ub < 0.05)
      tab lt5perc
      The prtest tests the proportion of SoC (txt = 0) - that of A (txt = 1). Then it resample many times to check, essentially, how many percent of the 95% CI upper bound does not exceed +0.5. That percent should reflect the power used for the initial calculation, which is 95%.
      Last edited by Ken Chui; 12 Aug 2021, 18:37.

      Comment


      • #4
        That's a small difference on a soft endpoint. It seems surprising that a granting agency would fund such a clinical study of even 200 patients, let alone thousands.

        I'm curious: how do you conclude if the results are something like the following? (Intervention A meets your study protocol's specified criterion for noninferioirty, after all.)

        Table 1. Proportion of patients attaining threshold quality-of-life score at observation intervals

        ÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿStandard-of-careÿÿÿInterventionÿA
        --------------------------------------------------------------
        Allÿfourÿtimeÿpointsÿÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0.48ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0.00
        Threeÿconsecutiveÿtimeÿpointsÿÿÿÿÿÿ0.48ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0.00
        Atÿleastÿthreeÿtimeÿpointsÿÿÿÿÿÿÿÿÿ0.48ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0.00
        Atÿleastÿtwoÿconsecutiveÿÿÿÿÿÿÿÿÿÿÿ0.48ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0.54*
        Atÿleastÿoneÿtimeÿpointÿÿÿÿÿÿÿÿÿÿÿÿ1.00ÿÿÿÿÿÿÿÿÿÿÿÿÿÿ0.54
        --------------------------------------------------------------
        *Allÿinÿtheÿfirstÿtwoÿtimeÿpoints

        Comment

        Working...
        X