Randomization Schedules Generating Using SAS Programming language

Randomization is a widely utilized method for experimental control in clinical trials. Creating a randomization schedule is a crucial aspect of certain trials. This discussion covers the use of SAS programming and SAS PROC PLAN to develop these schedules. Additionally, it addresses various issues related to randomization. Case studies are provided to demonstrate the application of SAS programming and SAS PROC PLAN in generating randomization schedules.

Randomization schedules

Randomization is a widely used method for experimental control in clinical trials. It primarily involves assigning treatment conditions to patients or vice versa. This process helps create treatment groups with similar distributions of both known and unknown prognostic factors. When combined with blinding, randomization minimizes potential biases in patient selection and allocation due to predictable treatment assignments. Statistically, it ensures unbiased estimates of error variance and independence of errors.

In practice, generating reproducible randomization schedules is essential. This typically involves obtaining random numbers and assigning them to patients or treatment conditions. These random numbers can be generated by a computer or sourced from random number tables commonly found in statistics textbooks. For simple randomized controlled trials with small sample sizes, randomization can be easily achieved by assigning random numbers from a table to treatment conditions and translating them into treatment assignments.

However, for larger sample sizes, restricted or stratified randomization, or unbalanced treatment allocation ratios, it is more efficient to use computer programming for randomization.

UNRESTRICTED RANDOMIZATION, BLOCK RANDOMIZATION, AND STRATIFIED RANDOMIZATION

The simplest form of randomization is unrestricted randomization, where treatments are assigned to patients sequentially based on random numbers without any constraints. While this method is acceptable, there are benefits to using block randomization, also known as restricted randomization. Block randomization enhances the comparability of treatment groups, especially when patient characteristics may vary over time due to changes in recruitment policies. It also ensures that treatment groups are nearly equal in size. In crossover trials, block randomization helps achieve balanced designs, leading to greater efficiency and easier interpretation. It’s important to select block lengths that are short enough to minimize imbalance but long enough to prevent predictability towards the end of a block sequence.

Another method used in practice is stratified randomization, which involves creating separate randomization lists for each subgroup or stratum. This approach is typically used to control for imbalances in baseline characteristics such as gender, age group, or initial condition. In multi-center clinical trials, randomization can be done centrally or at each center, which can be seen as an example of stratified randomization with the center as a stratum effect. Stratified randomization is also useful in dose-escalation clinical trials, where patients are randomized within each dose cohort.

Treatment / Placebo Ratio

In clinical trials, a placebo group is often used as a control. The ratio of treatment to placebo can be either 1:1 (balanced design) or x:1 (x>1, unbalanced design). For instance, in a pain study, we might compare the analgesic effects of an investigational new drug (IND), an active control, and a placebo. Since the placebo is expected to have no analgesic effect, the number of patients in the placebo group can be minimized. An unbalanced treatment/placebo ratio, such as IND:Active:Placebo = 2:2:1, can be used. While manual randomization for an unbalanced ratio can be time-consuming and prone to errors, it can be efficiently managed through programming.

Timing of Patient Randomization

When creating a randomization schedule, it’s crucial to determine the appropriate stage for randomizing patients. One unique approach is the Zelen design, where randomization occurs before obtaining the patient’s informed consent. In this design, only those assigned to the experimental group are asked for consent, while the control group remains unaware of the randomization process. Although this method is controversial and infrequently used, it has been proposed in various studies. Typically, patients are randomized after they have provided informed consent and met the study’s inclusion and exclusion criteria.

Randomization
Randomization Schedule

SAS Programming for Randomization

Generating Randomization Schedules

SAS programming is a powerful tool for creating complex randomization schedules. This involves generating random numbers and using the SAS procedure PROC PLAN to develop the schedule.

Random Number Generation

The initial step in creating a randomization schedule is generating random numbers. Base SAS offers several random number generators, including the RANUNI function, which produces random values from a uniform distribution. The RANUNI function employs a prime modulus multiplicative congruential generator with a modulus of (2^{31} – 1) and a multiplier of 397204094, a method that has been reliable for over 35 years. PROC PLAN utilizes the same random number generator as the RANUNI function.

The random numbers produced by this generator are pseudo-random. By using the same seed, identical random numbers can be generated, allowing for the reproduction of a randomization schedule. For instance, the following program generates 100 four-digit random numbers.

data randnum;

seed=date();

do i=1 to 100;

x1=int(ranuni(seed)*10000);

x=put(x1, z4.);

output;

end;

drop seed x1;

run;

proc print data=randnum;

id i;

run;

 

Here are some example random numbers that could be generated: 1783, 2110, 9638, 0172, 7250, 0373, 8595, 5026, 1095, 7645, etc. By assigning these numbers to different treatments, the randomization process can be effectively implemented.

Creating a Randomization Schedule Using PROC PLAN

The PLAN procedure is used to design and randomize plans for factorial experiments, including nested and crossed experiments and randomized block designs. Additionally, PROC PLAN can generate lists of permutations and combinations of numbers. The types of experimental designs that PROC PLAN can create include:

  • Full factorials, with or without randomization
  • Certain balanced and partially balanced incomplete block designs
  • Generalized cyclic incomplete block designs
  • Latin square designs

PROC PLAN generates designs by first selecting the levels for the first factor. For the second factor, it selects levels for each level of the first factor. Generally, for any given factor, PROC PLAN selects levels for all combinations of levels of the preceding factors.

PROC PLAN is relatively straightforward and includes the following four statements:

  • PROC PLAN Statement: Initiates the PLAN procedure and optionally specifies a random number seed.
  • FACTORS Statement: Specifies the factors of the plan and generates the plan.
  • OUTPUT Statement: Saves the last generated plan to the specified data set.
  • TREATMENTS Statement: Specifies the treatments of the plan to generate, but does not generate a plan.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Regulatory Affairs Overview British Pharmacopoeia (BP) Download Free Pdf-2024.