Replication script
randomizeR: An R Package for the Assessment and Implementation of
Randomization in Clinical Trials
if(!require(randomizeR)){install.packages("randomizeR")}
Loading required package: randomizeR
Loading required package: ggplot2
Loading required package: plotrix
(params <- crPar(N))
Object of class "crPar"
design = CR
N = 10
groups = A B
set initial parameters for the randomization procedure
generate one random sequence for a clinical trial
(rs <- genSeq(params))
Object of class "rCrSeq"
design = CR
seed = 808898100
N = 10
groups = A B
The sequence M:
1 B A A A B A B A A A
extract randomization sequence from randSeq object
getRandList(rs)
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] "B" "A" "A" "A" "B" "A" "B" "A" "A" "A"
save information from randomization sequence object to .csv file
Table 3: list of supported randomization procedures
hadaPar(N)
Object of class "hadaPar"
design = HADA
N = 10
groups = A B
plot the sequence rs

calculate the complete set of sequences of the randomization procedure
(allSeqs <- getAllSeq(params))
Object of class "crSeq"
design = CR
N = 10
groups = A B
The first 3 of 1024 sequences of M:
1 A A A A A A A A A A
2 B A A A A A A A A A
3 A B A A A A A A A A
...
generate a simulated set of sequences in case of larger N
(randomSeqs <- genSeq(params, r = 10000))
Object of class "rCrSeq"
design = CR
seed = 1034131350
N = 50
groups = A B
The first 3 of 10000 sequences of M:
1 B A A A B A A A A B ...
2 B A A A B A A B B B ...
3 B B B B A B A A B B ...
...
show sequences with probabilities
set endpoint
generate object representing chronological bias due to linear trend
(cb <- chronBias(type = "linT", theta = 1, method = "exact"))
Object of class "chronBias"
TYPE = linT
THETA = 1
METHOD = exact
ALPHA = 0.05
exact assessment of a randomization procedure
set parameters of the randomization procedure
criteria for the assessment
assessment
(Assessment <-assess(bsdSeq, sb, cb, pw, endp = normalEndpoint))
Assessment of a randomization procedure
design = BSD(2)
N = 12
K = 2
groups = A B
The first 3 rows of 972 rows of D:
Sequence Probability P(rej)(CS) P(rej)(linT) power(exact)
1 BBABABABA ... 0.004 0.045 0.072 0.789
2 BABBABABA ... 0.002 0.042 0.066 0.789
3 ABBBABABA ... 0.002 0.039 0.062 0.789
...
show summary of the assessment
summary(Assessment)
P(rej)(CS) P(rej)(linT) power(exact)
mean 0.056 0.046 0.795
sd 0.013 0.006 0.006
max 0.109 0.072 0.800
min 0.034 0.042 0.789
x05 0.037 0.042 0.789
x25 0.048 0.042 0.789
x50 0.054 0.044 0.789
x75 0.062 0.048 0.800
x95 0.079 0.058 0.800
comparison of randomization procedures
set parameters of the randomization procedures
calculate the comparison of the procedures with respec to selection bias
(Comparison <- compare(sb, bsdSeq, mpSeq, pbrSeq, endp = normalEndpoint))
Comparison for P(rej)(CS)
BSD.2. MP.2. PBR.4.
mean 0.056 0.072 0.082
sd 0.013 0.015 0.015
max 0.109 0.109 0.109
min 0.034 0.040 0.050
x05 0.037 0.050 0.061
x25 0.048 0.061 0.072
x50 0.054 0.072 0.079
x75 0.062 0.079 0.099
x95 0.079 0.100 0.103
plot comparison of randomization procedures

LS0tCnRpdGxlOiAicmFuZG9taXplUiIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQoKIyMgUmVwbGljYXRpb24gc2NyaXB0CiMjCiMjIHJhbmRvbWl6ZVI6IEFuIFIgUGFja2FnZSBmb3IgdGhlIEFzc2Vzc21lbnQgYW5kIEltcGxlbWVudGF0aW9uIG9mCiMjIFJhbmRvbWl6YXRpb24gaW4gQ2xpbmljYWwgVHJpYWxzCgpgYGB7cn0KaWYoIXJlcXVpcmUocmFuZG9taXplUikpe2luc3RhbGwucGFja2FnZXMoInJhbmRvbWl6ZVIiKX0KYGBgCgpgYGB7cn0KTiA8LSAxMCAKKHBhcmFtcyA8LSBjclBhcihOKSkKYGBgCgojIyBzZXQgaW5pdGlhbCBwYXJhbWV0ZXJzIGZvciB0aGUgcmFuZG9taXphdGlvbiBwcm9jZWR1cmUKCgojIyBnZW5lcmF0ZSBvbmUgcmFuZG9tIHNlcXVlbmNlIGZvciBhIGNsaW5pY2FsIHRyaWFsCmBgYHtyfQpzZXQuc2VlZCgxMTIpCnBhcmFtcyA8LSBjclBhcihOKQoocnMgPC0gZ2VuU2VxKHBhcmFtcykpCmBgYAoKCgojIyBleHRyYWN0IHJhbmRvbWl6YXRpb24gc2VxdWVuY2UgZnJvbSByYW5kU2VxIG9iamVjdApgYGB7cn0KZ2V0UmFuZExpc3QocnMpCmBgYAoKCgojIyBzYXZlIGluZm9ybWF0aW9uIGZyb20gcmFuZG9taXphdGlvbiBzZXF1ZW5jZSBvYmplY3QgdG8gLmNzdiBmaWxlCmBgYHtyfQpzYXZlUmFuZChycywgZmlsZSA9ICJteVJhbmRMaXN0LmNzdiIpCmBgYAoKCiMjIFRhYmxlIDM6IGxpc3Qgb2Ygc3VwcG9ydGVkIHJhbmRvbWl6YXRpb24gcHJvY2VkdXJlcwpgYGB7cn0KCnJiIDwtIGMoMiwgNCkKYmMgPC0gcmVwKDIsIDUpCm10aSA8LSAyCnAgPC0gMC42NjcKcmhvIDwtIDIKYSA8LSA0CmluaSA8LSAwCmFkZCA8LSAxCgpgYGAKCmBgYHtyfQpjclBhcihOKQpyYXJQYXIoTikKcGJyUGFyKGJjKQpycGJyUGFyKE4sIHJiKQp0YmRQYXIoYmMpIApydGJkUGFyKE4sIHJiKQptcFBhcihOLCBtdGkpCmJzZFBhcihOLCBtdGkpCmViY1BhcihOLCBwKQpjaGVuUGFyKE4sIG10aSwgcCkKZ2JjZFBhcihOLCByaG8pCmFiY2RQYXIoTiwgYSkKYmJjZFBhcihOLCBhKQp1ZFBhcihOLCBpbmksIGFkZCkKaGFkYVBhcihOKQpgYGAKCgoKIyMgcGxvdCB0aGUgc2VxdWVuY2UgcnMKYGBge3J9CnBsb3RTZXEocnMsIHBsb3RBbGxTZXEgPSBUUlVFKQoKYGBgCgoKIyMgY2FsY3VsYXRlIHRoZSBjb21wbGV0ZSBzZXQgb2Ygc2VxdWVuY2VzIG9mIHRoZSByYW5kb21pemF0aW9uIHByb2NlZHVyZQpgYGB7cn0KKGFsbFNlcXMgPC0gZ2V0QWxsU2VxKHBhcmFtcykpCmBgYAoKCiMjIGdlbmVyYXRlIGEgc2ltdWxhdGVkIHNldCBvZiBzZXF1ZW5jZXMgaW4gY2FzZSBvZiBsYXJnZXIgTgpgYGB7cn0Kc2V0LnNlZWQoMTk4NikKTiA8LSA1MApwYXJhbXMgPC0gY3JQYXIoTikKKHJhbmRvbVNlcXMgPC0gZ2VuU2VxKHBhcmFtcywgciA9IDEwMDAwKSkKYGBgCgoKIyMgc2hvdyBzZXF1ZW5jZXMgd2l0aCBwcm9iYWJpbGl0aWVzIApgYGB7cn0KbXlQYXN0ZSA8LSBmdW5jdGlvbihycykgewogIGFwcGx5KHJzLCAxLCBmdW5jdGlvbih4KSBwYXN0ZSh4LCBjb2xsYXBzZSA9ICIiKSkKfQpwIDwtIGdldFByb2IoYWxsU2VxcykKaGVhZChkYXRhLmZyYW1lKFNlcXVlbmNlcyA9IG15UGFzdGUoZ2V0UmFuZExpc3QoYWxsU2VxcykpLCBQcm9iYWJpbGl0eSA9IHJvdW5kKHAsIDYpKSkKCmBgYAoKIyMgc2V0IGVuZHBvaW50IApgYGB7cn0KbXVBIDwtIG11QiA8LSAwCnNpZ21hQSA8LSBzaWdtYUIgPC0gMQpub3JtYWxFbmRwb2ludCA8LSBub3JtRW5kcChtdSA9IGMobXVBLCBtdUIpLCBzaWdtYSA9IGMoc2lnbWFBLCBzaWdtYUIpKQpgYGAKCgojIyBnZW5lcmF0ZSBvYmplY3QgcmVwcmVzZW50aW5nIGNocm9ub2xvZ2ljYWwgYmlhcyBkdWUgdG8gbGluZWFyIHRyZW5kCmBgYHtyfQooY2IgPC0gY2hyb25CaWFzKHR5cGUgPSAibGluVCIsIHRoZXRhID0gMSwgbWV0aG9kID0gImV4YWN0IikpCgpgYGAKCiMjIGV4YWN0IGFzc2Vzc21lbnQgb2YgYSByYW5kb21pemF0aW9uIHByb2NlZHVyZQojIyBzZXQgcGFyYW1ldGVycyBvZiB0aGUgcmFuZG9taXphdGlvbiBwcm9jZWR1cmUKYGBge3J9Ck4gPC0gMTIKbXRpIDwtIDIKYnNkU2VxIDwtIGdldEFsbFNlcShic2RQYXIoTiwgbXRpKSkKCmBgYAoKIyMgY3JpdGVyaWEgZm9yIHRoZSBhc3Nlc3NtZW50CmBgYHtyfQpkIDwtIDEuNzk2IApzYiA8LSBzZWxCaWFzKCJDUyIsIGV0YSA9IGQvNCwgbWV0aG9kID0gImV4YWN0IikKY2IgPC0gY2hyb25CaWFzKCJsaW5UIiwgdGhldGEgPSAxL04sIG1ldGhvZCA9ICJleGFjdCIpIApwdyA8LSBzZXRQb3dlcihkLCBtZXRob2QgPSAiZXhhY3QiKSAKCmBgYAoKIyMgYXNzZXNzbWVudApgYGB7cn0KKEFzc2Vzc21lbnQgPC1hc3Nlc3MoYnNkU2VxLCBzYiwgY2IsIHB3LCBlbmRwID0gbm9ybWFsRW5kcG9pbnQpKQoKYGBgCgojIyBzaG93IHN1bW1hcnkgb2YgdGhlIGFzc2Vzc21lbnQKYGBge3J9CnN1bW1hcnkoQXNzZXNzbWVudCkKCmBgYAoKIyMgY29tcGFyaXNvbiBvZiByYW5kb21pemF0aW9uIHByb2NlZHVyZXMKIyMgc2V0IHBhcmFtZXRlcnMgb2YgdGhlIHJhbmRvbWl6YXRpb24gcHJvY2VkdXJlcwpgYGB7cn0KbXBTZXEgPC0gZ2V0QWxsU2VxKG1wUGFyKE4sIG10aSkpCmJjIDwtIHJlcCg0LCBOLzQpIApwYnJTZXEgPC0gZ2V0QWxsU2VxKHBiclBhcihiYykpCmBgYAoKCiMjIGNhbGN1bGF0ZSB0aGUgY29tcGFyaXNvbiBvZiB0aGUgcHJvY2VkdXJlcyB3aXRoIHJlc3BlYyB0byBzZWxlY3Rpb24gYmlhcwpgYGB7cn0KKENvbXBhcmlzb24gPC0gY29tcGFyZShzYiwgYnNkU2VxLCBtcFNlcSwgcGJyU2VxLCBlbmRwID0gbm9ybWFsRW5kcG9pbnQpKQoKYGBgCgojIyBwbG90IGNvbXBhcmlzb24gb2YgcmFuZG9taXphdGlvbiBwcm9jZWR1cmVzCmBgYHtyfQpwbG90KENvbXBhcmlzb24pCmBgYAoKCgoK