BookmarkSubscribeRSS Feed
azt5173
Obsidian | Level 7

My data has 3 treatments(A,B,C). I need to allocate the subject to the treatment according to a 2:1:2 randomization ratio based on a random number generated from a uniform(0,1) distribution. This is the code I have so far, I just need one random treatment for the subject, I can come up with a random number from the code but no idea how to get the treatment incorporated into it. Data set dynamic contains all of the treatments in a 2:1:2 ratio. 

 

Data A;
set dynamic;
do i=1 to 1;
call streaminit(123);
u=rand("Uniform");
output;
end;

 

Any help will be appreciated. Thank you. 
run;

 

1 REPLY 1
PGStats
Opal | Level 21

As @freelanceReinhard told you yesterday, use proc surveyselect with option groups=.

 

If that approach doesn't work for you, please tell us why.

PG

sas-innovate-white.png

Register Today!

Join us for SAS Innovate 2025, our biggest and most exciting global event of the year, in Orlando, FL, from May 6-9.

 

Early bird rate extended! Save $200 when you sign up by March 31.

Register now!

What is Bayesian Analysis?

Learn the difference between classical and Bayesian statistical approaches and see a few PROC examples to perform Bayesian analysis in this video.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 1 reply
  • 868 views
  • 0 likes
  • 2 in conversation