Sequantial random. Just getting random sequence first. First set the completely random generator. Then generate a sequence
library(randomizeR)
## Warning: package 'randomizeR' was built under R version 3.4.4
## Loading required package: ggplot2
## Loading required package: plotrix
## Warning: package 'plotrix' was built under R version 3.4.4
N = 10
parms = crPar(N)
rs = genSeq(parms)
rsList = getRandList(rs)
rsList = t(rsList); rsList
## [,1]
## [1,] "B"
## [2,] "B"
## [3,] "A"
## [4,] "B"
## [5,] "A"
## [6,] "A"
## [7,] "B"
## [8,] "B"
## [9,] "A"
## [10,] "A"
write.csv(rsList, "rsList.csv", row.names = FALSE)
Try block rand first. Ok this makes sense. We figure out which groups we want to stratify or block on then it generates a random sequences for that group based on the number of people we want to randomize. Still not sure why we need the block sizes, I think it is to help ensure that not too many people get assigned to treatment and or control.
If you have three strats, then you need to include the intersection of each, because they could be in multiple categories. For example, if you have female, male, low, and high risk then you also need groups for male low, male high, female low, female high to make sure there is not overlap. You have to be either male or female or low and high so have the intersections works.
library(blockrand)
male = blockrand(n = 100, id.prefix = "M", block.prefix = "M", stratum = "Male")
head(male)
## id stratum block.id block.size treatment
## 1 M001 Male M01 8 A
## 2 M002 Male M01 8 A
## 3 M003 Male M01 8 B
## 4 M004 Male M01 8 B
## 5 M005 Male M01 8 A
## 6 M006 Male M01 8 B
female = blockrand(n = 100, id.prefix = "F", stratum = "Female")
head(female)
## id stratum block.id block.size treatment
## 1 F001 Female 1 4 A
## 2 F002 Female 1 4 B
## 3 F003 Female 1 4 A
## 4 F004 Female 1 4 B
## 5 F005 Female 2 2 B
## 6 F006 Female 2 2 A
my.study = rbind(male, female); my.study
## id stratum block.id block.size treatment
## 1 M001 Male M01 8 A
## 2 M002 Male M01 8 A
## 3 M003 Male M01 8 B
## 4 M004 Male M01 8 B
## 5 M005 Male M01 8 A
## 6 M006 Male M01 8 B
## 7 M007 Male M01 8 B
## 8 M008 Male M01 8 A
## 9 M009 Male M02 2 B
## 10 M010 Male M02 2 A
## 11 M011 Male M03 4 B
## 12 M012 Male M03 4 A
## 13 M013 Male M03 4 A
## 14 M014 Male M03 4 B
## 15 M015 Male M04 4 A
## 16 M016 Male M04 4 B
## 17 M017 Male M04 4 B
## 18 M018 Male M04 4 A
## 19 M019 Male M05 4 B
## 20 M020 Male M05 4 B
## 21 M021 Male M05 4 A
## 22 M022 Male M05 4 A
## 23 M023 Male M06 2 B
## 24 M024 Male M06 2 A
## 25 M025 Male M07 8 B
## 26 M026 Male M07 8 A
## 27 M027 Male M07 8 B
## 28 M028 Male M07 8 B
## 29 M029 Male M07 8 B
## 30 M030 Male M07 8 A
## 31 M031 Male M07 8 A
## 32 M032 Male M07 8 A
## 33 M033 Male M08 6 B
## 34 M034 Male M08 6 A
## 35 M035 Male M08 6 A
## 36 M036 Male M08 6 B
## 37 M037 Male M08 6 A
## 38 M038 Male M08 6 B
## 39 M039 Male M09 8 A
## 40 M040 Male M09 8 B
## 41 M041 Male M09 8 A
## 42 M042 Male M09 8 A
## 43 M043 Male M09 8 A
## 44 M044 Male M09 8 B
## 45 M045 Male M09 8 B
## 46 M046 Male M09 8 B
## 47 M047 Male M10 6 B
## 48 M048 Male M10 6 A
## 49 M049 Male M10 6 B
## 50 M050 Male M10 6 A
## 51 M051 Male M10 6 B
## 52 M052 Male M10 6 A
## 53 M053 Male M11 8 A
## 54 M054 Male M11 8 B
## 55 M055 Male M11 8 A
## 56 M056 Male M11 8 B
## 57 M057 Male M11 8 A
## 58 M058 Male M11 8 A
## 59 M059 Male M11 8 B
## 60 M060 Male M11 8 B
## 61 M061 Male M12 2 B
## 62 M062 Male M12 2 A
## 63 M063 Male M13 4 A
## 64 M064 Male M13 4 B
## 65 M065 Male M13 4 B
## 66 M066 Male M13 4 A
## 67 M067 Male M14 8 A
## 68 M068 Male M14 8 B
## 69 M069 Male M14 8 A
## 70 M070 Male M14 8 B
## 71 M071 Male M14 8 A
## 72 M072 Male M14 8 B
## 73 M073 Male M14 8 A
## 74 M074 Male M14 8 B
## 75 M075 Male M15 2 B
## 76 M076 Male M15 2 A
## 77 M077 Male M16 4 B
## 78 M078 Male M16 4 A
## 79 M079 Male M16 4 A
## 80 M080 Male M16 4 B
## 81 M081 Male M17 2 A
## 82 M082 Male M17 2 B
## 83 M083 Male M18 6 B
## 84 M084 Male M18 6 B
## 85 M085 Male M18 6 B
## 86 M086 Male M18 6 A
## 87 M087 Male M18 6 A
## 88 M088 Male M18 6 A
## 89 M089 Male M19 4 A
## 90 M090 Male M19 4 B
## 91 M091 Male M19 4 A
## 92 M092 Male M19 4 B
## 93 M093 Male M20 8 B
## 94 M094 Male M20 8 A
## 95 M095 Male M20 8 B
## 96 M096 Male M20 8 B
## 97 M097 Male M20 8 A
## 98 M098 Male M20 8 A
## 99 M099 Male M20 8 B
## 100 M100 Male M20 8 A
## 101 F001 Female 1 4 A
## 102 F002 Female 1 4 B
## 103 F003 Female 1 4 A
## 104 F004 Female 1 4 B
## 105 F005 Female 2 2 B
## 106 F006 Female 2 2 A
## 107 F007 Female 3 6 B
## 108 F008 Female 3 6 B
## 109 F009 Female 3 6 B
## 110 F010 Female 3 6 A
## 111 F011 Female 3 6 A
## 112 F012 Female 3 6 A
## 113 F013 Female 4 8 A
## 114 F014 Female 4 8 B
## 115 F015 Female 4 8 B
## 116 F016 Female 4 8 B
## 117 F017 Female 4 8 A
## 118 F018 Female 4 8 B
## 119 F019 Female 4 8 A
## 120 F020 Female 4 8 A
## 121 F021 Female 5 4 A
## 122 F022 Female 5 4 B
## 123 F023 Female 5 4 B
## 124 F024 Female 5 4 A
## 125 F025 Female 6 4 B
## 126 F026 Female 6 4 A
## 127 F027 Female 6 4 B
## 128 F028 Female 6 4 A
## 129 F029 Female 7 6 B
## 130 F030 Female 7 6 A
## 131 F031 Female 7 6 A
## 132 F032 Female 7 6 B
## 133 F033 Female 7 6 B
## 134 F034 Female 7 6 A
## 135 F035 Female 8 6 B
## 136 F036 Female 8 6 B
## 137 F037 Female 8 6 A
## 138 F038 Female 8 6 B
## 139 F039 Female 8 6 A
## 140 F040 Female 8 6 A
## 141 F041 Female 9 6 B
## 142 F042 Female 9 6 A
## 143 F043 Female 9 6 A
## 144 F044 Female 9 6 A
## 145 F045 Female 9 6 B
## 146 F046 Female 9 6 B
## 147 F047 Female 10 8 A
## 148 F048 Female 10 8 B
## 149 F049 Female 10 8 B
## 150 F050 Female 10 8 A
## 151 F051 Female 10 8 A
## 152 F052 Female 10 8 A
## 153 F053 Female 10 8 B
## 154 F054 Female 10 8 B
## 155 F055 Female 11 8 A
## 156 F056 Female 11 8 A
## 157 F057 Female 11 8 B
## 158 F058 Female 11 8 A
## 159 F059 Female 11 8 A
## 160 F060 Female 11 8 B
## 161 F061 Female 11 8 B
## 162 F062 Female 11 8 B
## 163 F063 Female 12 4 B
## 164 F064 Female 12 4 A
## 165 F065 Female 12 4 A
## 166 F066 Female 12 4 B
## 167 F067 Female 13 4 A
## 168 F068 Female 13 4 B
## 169 F069 Female 13 4 A
## 170 F070 Female 13 4 B
## 171 F071 Female 14 4 A
## 172 F072 Female 14 4 B
## 173 F073 Female 14 4 A
## 174 F074 Female 14 4 B
## 175 F075 Female 15 2 B
## 176 F076 Female 15 2 A
## 177 F077 Female 16 2 B
## 178 F078 Female 16 2 A
## 179 F079 Female 17 8 A
## 180 F080 Female 17 8 A
## 181 F081 Female 17 8 B
## 182 F082 Female 17 8 A
## 183 F083 Female 17 8 B
## 184 F084 Female 17 8 B
## 185 F085 Female 17 8 A
## 186 F086 Female 17 8 B
## 187 F087 Female 18 6 B
## 188 F088 Female 18 6 A
## 189 F089 Female 18 6 A
## 190 F090 Female 18 6 B
## 191 F091 Female 18 6 B
## 192 F092 Female 18 6 A
## 193 F093 Female 19 2 B
## 194 F094 Female 19 2 A
## 195 F095 Female 20 2 B
## 196 F096 Female 20 2 A
## 197 F097 Female 21 4 A
## 198 F098 Female 21 4 B
## 199 F099 Female 21 4 A
## 200 F100 Female 21 4 B
threeGroups = blockrand(n = 100, id.prefix = "G", block.prefix = "G", stratum = "G", num.levels = 3); head(threeGroups)
## id stratum block.id block.size treatment
## 1 G001 G G01 9 A
## 2 G002 G G01 9 A
## 3 G003 G G01 9 B
## 4 G004 G G01 9 C
## 5 G005 G G01 9 C
## 6 G006 G G01 9 C
Trying big stick design
library(randomizeR)
bigStickDesign = bsdPar(100, 2, groups = c("Treatment", "Control"))
bsdRand(N = 100, mti = 2, K = 2)
## [1] 0 0 1 1 0 0 1 0 1 0 1 1 1 1 0 1 0 1 0 1 0 0 0 1 1 0 1 1 0 1 0 1 0 0 1
## [36] 1 0 1 0 0 0 0 1 0 1 1 0 0 1 0 1 0 1 0 1 1 0 0 1 1 1 1 0 0 0 1 1 0 1 0
## [71] 0 0 1 1 1 0 0 0 1 0 1 1 1 0 0 0 1 1 1 0 1 0 0 1 0 0 1 1 1 0
genSeq(bigStickDesign, r = 10)
##
## Object of class "rBsdSeq"
##
## design = BSD(2)
## seed = 93157556
## N = 100
## groups = Treatment Control
## mti = 2
##
## The first 3 of 10 sequences of M:
##
## 1 Treatment Treatment Control Treatment Control Control Treatment Treatment Control Treatment ...
## 2 Treatment Treatment Control Treatment Control Treatment Control Control Treatment Treatment ...
## 3 Treatment Treatment Control Treatment Control Control Treatment Control Treatment Control ...
## ...