In the frequentist section, we propose several alternative rules for making particular decisions but we don’t provide too much evidence that these proposed rules are reasonable or good. I think that it would be really helpful to show, graphically, the probability of making a certain decision for different rules, effect sizes, and study designs. This would, hopefully, show that, for example, the proposed double barrel rule is a reasonable one.
I have shown how we could do this graphically for the first scenario (the non-inferiority one) below.
library(tidyverse)
Registered S3 method overwritten by 'dplyr':
method from
print.rowwise_df
Registered S3 methods overwritten by 'dbplyr':
method from
print.tbl_lazy
print.tbl_sql
[30m-- [1mAttaching packages[22m --------------------------------------- tidyverse 1.3.0 --[39m
[30m[32mv[30m [34mggplot2[30m 3.2.1 [32mv[30m [34mpurrr [30m 0.3.3
[32mv[30m [34mtibble [30m 2.1.3 [32mv[30m [34mdplyr [30m 0.8.3
[32mv[30m [34mtidyr [30m 1.0.0 [32mv[30m [34mstringr[30m 1.4.0
[32mv[30m [34mreadr [30m 1.3.1 [32mv[30m [34mforcats[30m 0.4.0[39m
[30m-- [1mConflicts[22m ------------------------------------------ tidyverse_conflicts() --
[31mx[30m [34mdplyr[30m::[32mfilter()[30m masks [34mstats[30m::filter()
[31mx[30m [34mdplyr[30m::[32mlag()[30m masks [34mstats[30m::lag()[39m
library(ggplot2)
output_dir <- "C:/Users/dougj/Documents/Bayes stuff/Output"
Testing for non-inferiority
Our working paper proposes two candidate rules for deciding whether to scale up the new intervention
- Rule 1: Null of no difference between the two treatments against one-sided alternative that effect of treatment two is greater than treatment one. (Note that the current version of the text uses a two sided test but I have used a one sided test here since it makes the math slightly more straightforward)
- Rule 2: Null that the effect of the new intervention is at least as large as the effect of the first intervention minus .1 against the alternative that the new intervention is larger than this.
With these two rules, the probability of rejecting the null with the first rule is…
\[ P(reject null, rule 1)=1-\Phi \left({\frac{\Phi^{-1}(1-\alpha_1 )se-\delta}{se}}\right) \]
Where se is the standard error of the estimate, \(\alpha_1\) is our significance level, and \(\delta\) is the difference in the effect sizes. Likewise, the probability of rejecting the null using rule 2 is…
\[ P(reject null, rule 1)=1-\Phi \left({\frac{\Phi^{-1}(1-\alpha_2)se-\delta-\tau}{se}}\right) \] Where se and \(\delta\) are the same as before, \(\alpha_2\) is our new significance level, and \(\tau\) is our non-inferiority threshold. (.1 in the text)
For an RCT with no baseline and equal size treatment and control groups, the standard error of the difference between treatment and control is…
\[ \hat{\sigma_{\Delta}}=\sigma_y\sqrt{\frac{2}{N}} \]
To simplify things further, we may define \(\delta_{sd}=\delta/\sigma_y\) and \(\tau_{sd}=\delta/\sigma_y\). Then we have…
\[ P(reject null, rule 1)=1-\Phi \left({\frac{\Phi^{-1}(1-\alpha_1 )(2/N)^.5-\delta_{sd}}{(2/N)^.5}}\right) \]
Define the functions
p1_reject <- function(deltasd, N, alpha = .05) {
se <- (2/N)^.5
prob <- 1-pnorm((qnorm(1-alpha)*se-deltasd)/se)
return(prob)
}
p2_reject <- function(deltasd, N, tausd, alpha = .05) {
se <- (2/N)^.5
prob <- 1-pnorm((qnorm(1-alpha)*se-deltasd-tausd)/se)
return(prob)
}
# test the probabilty is alpha if delta = 0
p1_reject(0, 100)
[1] 0.05
Graph the functions for various values of delta and N
p <- ggplot(data = data.frame(x = 0), mapping = aes(x = x))
fun.1 <- function(x) p1_reject(x, 100)
fun.2 <- function(x) p2_reject(x, 100, .1)
fun.3 <- function(x) p1_reject(x, 300)
fun.4 <- function(x) p2_reject(x, 300, .1)
p + stat_function(fun = fun.1, aes(color = "Rule 1, N = 100")) +
stat_function(fun = fun.2, aes(color = "Rule 2, N=100, tausd = .1")) +
stat_function(fun = fun.3, aes(color = "Rule 1, N = 300")) +
stat_function(fun = fun.4, aes(color = "Rule 2, N=300, tausd = .1")) +
scale_color_brewer(palette = "Spectral") +
labs(x = "Effect size difference in SDs" , y = "Prob. scale new intervention", colour = "Decision rule + study design") +
xlim(-.2,.3)

NA
NA
LS0tDQp0aXRsZTogIkdyYXBoaW5nIHBvd2VyIHZzIGVmZmVjdCBzaXplIg0Kb3V0cHV0OiBodG1sX25vdGVib29rDQotLS0NCg0KSW4gdGhlIGZyZXF1ZW50aXN0IHNlY3Rpb24sIHdlIHByb3Bvc2Ugc2V2ZXJhbCBhbHRlcm5hdGl2ZSBydWxlcyBmb3IgbWFraW5nIHBhcnRpY3VsYXIgZGVjaXNpb25zIGJ1dCB3ZSBkb24ndCBwcm92aWRlIHRvbyBtdWNoIGV2aWRlbmNlIHRoYXQgdGhlc2UgcHJvcG9zZWQgcnVsZXMgYXJlIHJlYXNvbmFibGUgb3IgZ29vZC4gSSB0aGluayB0aGF0IGl0IHdvdWxkIGJlIHJlYWxseSBoZWxwZnVsIHRvIHNob3csIGdyYXBoaWNhbGx5LCB0aGUgcHJvYmFiaWxpdHkgb2YgbWFraW5nIGEgY2VydGFpbiBkZWNpc2lvbiBmb3IgZGlmZmVyZW50IHJ1bGVzLCBlZmZlY3Qgc2l6ZXMsIGFuZCBzdHVkeSBkZXNpZ25zLiBUaGlzIHdvdWxkLCBob3BlZnVsbHksIHNob3cgdGhhdCwgZm9yIGV4YW1wbGUsIHRoZSBwcm9wb3NlZCBkb3VibGUgYmFycmVsIHJ1bGUgaXMgYSByZWFzb25hYmxlIG9uZS4gDQoNCkkgaGF2ZSBzaG93biBob3cgd2UgY291bGQgZG8gdGhpcyBncmFwaGljYWxseSBmb3IgdGhlIGZpcnN0IHNjZW5hcmlvICh0aGUgbm9uLWluZmVyaW9yaXR5IG9uZSkgYmVsb3cuIA0KDQoNCmBgYHtyIHNldHVwfQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KGdncGxvdDIpDQpvdXRwdXRfZGlyIDwtICJDOi9Vc2Vycy9kb3Vnai9Eb2N1bWVudHMvQmF5ZXMgc3R1ZmYvT3V0cHV0Ig0KYGBgDQoNCg0KDQojIyMgVGVzdGluZyBmb3Igbm9uLWluZmVyaW9yaXR5DQpPdXIgd29ya2luZyBwYXBlciBwcm9wb3NlcyB0d28gY2FuZGlkYXRlIHJ1bGVzIGZvciBkZWNpZGluZyB3aGV0aGVyIHRvIHNjYWxlIHVwIHRoZSBuZXcgaW50ZXJ2ZW50aW9uDQoNCiogUnVsZSAxOiBOdWxsIG9mIG5vIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgdHdvIHRyZWF0bWVudHMgYWdhaW5zdCBvbmUtc2lkZWQgYWx0ZXJuYXRpdmUgdGhhdCBlZmZlY3Qgb2YgdHJlYXRtZW50IHR3byBpcyBncmVhdGVyIHRoYW4gdHJlYXRtZW50IG9uZS4gKE5vdGUgdGhhdCB0aGUgY3VycmVudCB2ZXJzaW9uIG9mIHRoZSB0ZXh0IHVzZXMgYSB0d28gc2lkZWQgdGVzdCBidXQgSSBoYXZlIHVzZWQgYSBvbmUgc2lkZWQgdGVzdCBoZXJlIHNpbmNlIGl0IG1ha2VzIHRoZSBtYXRoIHNsaWdodGx5IG1vcmUgc3RyYWlnaHRmb3J3YXJkKQ0KKiBSdWxlIDI6IE51bGwgdGhhdCB0aGUgZWZmZWN0IG9mIHRoZSBuZXcgaW50ZXJ2ZW50aW9uIGlzIGF0IGxlYXN0IGFzIGxhcmdlIGFzIHRoZSBlZmZlY3Qgb2YgdGhlIGZpcnN0IGludGVydmVudGlvbiBtaW51cyAuMSBhZ2FpbnN0IHRoZSBhbHRlcm5hdGl2ZSB0aGF0IHRoZSBuZXcgaW50ZXJ2ZW50aW9uIGlzIGxhcmdlciB0aGFuIHRoaXMuDQoNCldpdGggdGhlc2UgdHdvIHJ1bGVzLCB0aGUgcHJvYmFiaWxpdHkgb2YgcmVqZWN0aW5nIHRoZSBudWxsIHdpdGggdGhlIGZpcnN0IHJ1bGUgaXMuLi4NCg0KJCQgUChyZWplY3QgbnVsbCwgcnVsZSAxKT0xLVxQaGkgXGxlZnQoe1xmcmFje1xQaGleey0xfSgxLVxhbHBoYV8xIClzZS1cZGVsdGF9e3NlfX1ccmlnaHQpICQkDQoNCldoZXJlIHNlIGlzIHRoZSBzdGFuZGFyZCBlcnJvciBvZiB0aGUgZXN0aW1hdGUsICRcYWxwaGFfMSQgaXMgb3VyIHNpZ25pZmljYW5jZSBsZXZlbCwgYW5kICRcZGVsdGEkIGlzIHRoZSBkaWZmZXJlbmNlIGluIHRoZSBlZmZlY3Qgc2l6ZXMuIExpa2V3aXNlLCB0aGUgcHJvYmFiaWxpdHkgb2YgcmVqZWN0aW5nIHRoZSBudWxsIHVzaW5nIHJ1bGUgMiBpcy4uLg0KDQokJCBQKHJlamVjdCBudWxsLCBydWxlIDEpPTEtXFBoaSBcbGVmdCh7XGZyYWN7XFBoaV57LTF9KDEtXGFscGhhXzIpc2UtXGRlbHRhLVx0YXV9e3NlfX1ccmlnaHQpICQkDQpXaGVyZSBzZSBhbmQgJFxkZWx0YSQgYXJlIHRoZSBzYW1lIGFzIGJlZm9yZSwgJFxhbHBoYV8yJCBpcyBvdXIgbmV3IHNpZ25pZmljYW5jZSBsZXZlbCwgYW5kICRcdGF1JCBpcyBvdXIgbm9uLWluZmVyaW9yaXR5IHRocmVzaG9sZC4gICguMSBpbiB0aGUgdGV4dCkNCg0KRm9yIGFuIFJDVCB3aXRoIG5vIGJhc2VsaW5lIGFuZCBlcXVhbCBzaXplIHRyZWF0bWVudCBhbmQgY29udHJvbCBncm91cHMsIHRoZSBzdGFuZGFyZCBlcnJvciBvZiB0aGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRyZWF0bWVudCBhbmQgY29udHJvbCBpcy4uLg0KDQokJCBcaGF0e1xzaWdtYV97XERlbHRhfX09XHNpZ21hX3lcc3FydHtcZnJhY3syfXtOfX0gJCQNCg0KVG8gc2ltcGxpZnkgdGhpbmdzIGZ1cnRoZXIsIHdlIG1heSBkZWZpbmUgJFxkZWx0YV97c2R9PVxkZWx0YS9cc2lnbWFfeSQgYW5kICRcdGF1X3tzZH09XGRlbHRhL1xzaWdtYV95JC4gVGhlbiB3ZSBoYXZlLi4uDQoNCg0KJCQgUChyZWplY3QgbnVsbCwgcnVsZSAxKT0xLVxQaGkgXGxlZnQoe1xmcmFje1xQaGleey0xfSgxLVxhbHBoYV8xICkoMi9OKV4uNS1cZGVsdGFfe3NkfX17KDIvTileLjV9fVxyaWdodCkgJCQNCg0KDQojIyMgRGVmaW5lIHRoZSBmdW5jdGlvbnMNCg0KYGBge3J9DQoNCnAxX3JlamVjdCA8LSBmdW5jdGlvbihkZWx0YXNkLCBOLCBhbHBoYSA9IC4wNSkgew0KICBzZSA8LSAoMi9OKV4uNQ0KICBwcm9iIDwtIDEtcG5vcm0oKHFub3JtKDEtYWxwaGEpKnNlLWRlbHRhc2QpL3NlKQ0KICByZXR1cm4ocHJvYikNCn0NCg0KcDJfcmVqZWN0IDwtIGZ1bmN0aW9uKGRlbHRhc2QsIE4sIHRhdXNkLCBhbHBoYSA9IC4wNSkgew0KICBzZSA8LSAoMi9OKV4uNQ0KICBwcm9iIDwtIDEtcG5vcm0oKHFub3JtKDEtYWxwaGEpKnNlLWRlbHRhc2QtdGF1c2QpL3NlKQ0KICByZXR1cm4ocHJvYikNCn0NCg0KDQojIHRlc3QgdGhlIHByb2JhYmlsdHkgaXMgYWxwaGEgaWYgZGVsdGEgPSAwDQpwMV9yZWplY3QoMCwgMTAwKQ0KDQpgYGANCg0KIyMjIEdyYXBoIHRoZSBmdW5jdGlvbnMgZm9yIHZhcmlvdXMgdmFsdWVzIG9mIGRlbHRhIGFuZCBODQpgYGB7cn0NCnAgPC0gZ2dwbG90KGRhdGEgPSBkYXRhLmZyYW1lKHggPSAwKSwgbWFwcGluZyA9IGFlcyh4ID0geCkpDQpmdW4uMSA8LSBmdW5jdGlvbih4KSBwMV9yZWplY3QoeCwgMTAwKQ0KZnVuLjIgPC0gZnVuY3Rpb24oeCkgcDJfcmVqZWN0KHgsIDEwMCwgLjEpDQpmdW4uMyA8LSBmdW5jdGlvbih4KSBwMV9yZWplY3QoeCwgMzAwKQ0KZnVuLjQgPC0gZnVuY3Rpb24oeCkgcDJfcmVqZWN0KHgsIDMwMCwgLjEpDQpwICsgc3RhdF9mdW5jdGlvbihmdW4gPSBmdW4uMSwgYWVzKGNvbG9yID0gIlJ1bGUgMSwgTiA9IDEwMCIpKSArIA0KICBzdGF0X2Z1bmN0aW9uKGZ1biA9IGZ1bi4yLCBhZXMoY29sb3IgPSAiUnVsZSAyLCBOPTEwMCwgdGF1c2QgPSAuMSIpKSArDQogIHN0YXRfZnVuY3Rpb24oZnVuID0gZnVuLjMsIGFlcyhjb2xvciA9ICJSdWxlIDEsIE4gPSAzMDAiKSkgKyANCiAgc3RhdF9mdW5jdGlvbihmdW4gPSBmdW4uNCwgYWVzKGNvbG9yID0gIlJ1bGUgMiwgTj0zMDAsIHRhdXNkID0gLjEiKSkgKw0KICBzY2FsZV9jb2xvcl9icmV3ZXIocGFsZXR0ZSA9ICJTcGVjdHJhbCIpICsNCiAgbGFicyh4ID0gIkVmZmVjdCBzaXplIGRpZmZlcmVuY2UgaW4gU0RzIiAsIHkgPSAiUHJvYi4gc2NhbGUgbmV3IGludGVydmVudGlvbiIsIGNvbG91ciA9ICJEZWNpc2lvbiBydWxlICsgc3R1ZHkgZGVzaWduIikgKw0KICB4bGltKC0uMiwuMykNCg0KICAgIA0KYGBgDQoNCg0KDQoNCg==