Randomization of Subjects
Subjects are assigned to study groups by a random mechanism not controlled by the patient or the investigator. Randomization increases the likelihood treatment groups are comparable with respect to distribution of measurable and measurable characteristics.
Randomization Schedule
Prior to study start, a randomization schedule is generated by a statistician. Ex. a 2 treatment trial with 1:1 randomization.
Treatment allocation schemes should:
- Be unpredictable
- Neither the participant nor the investigator know in advance which treatment will be assigned (reduced observation bias)
- Promote balance
- Groups must be alike in all important aspects and only differ in the intervention each group receives
- Be simple
- Easy for investigator/staff to impelment
Generally, the randomization ratio should be equally allocated (1:1 randomization). Unequal randomization arises in some situations where we want more in one group than another due to costs or other factors.
Methods of Randomization
- Unrestricted randomization
- Equivalent to tossing a fair coin for each subject that enters the trial
- Assign each treatment randomly and independently of previous treatment
- Also called simple/complete randomization
- Block randomization
- Randomized permuted blocks
- Stratification
- Adaptive randomization
- Biased coin, etc
- Minimization
- Cluster randomization
SAS Code for generating random data:
*Method 1;
*RANUNI: generates random numbers between 0 and 1 which
have a uniform distribution;
data one;
seed=123;
do id=1 to 8;
r=ranuni(seed);
if r<0.5 then group='A';
if r>=0.5 then group='B';
output;
end;
run;
* Method 2;
data one;
seed=123;
do id=1 to 8;
r=ranuni(seed);
output;
end;
run;
proc sort data=one;
by r;
run;
data two;
set one;
if _n_<=4 then group='A';
if _n_>4 then group='B';
run;
proc sort data=two;
by id; * Sort again by id;
run;
* Method 3;
data three;
seed=123;
do id=1 to 8;
r=ranuni(seed);
output;
end;
run;
proc rank data=three groups=3 out=three;
var r;
ranks group;
run;
data three;
set three;
if group=0 then trt='A';
if group=1 then trt='B';
if group=2 then trt='C';
run