Hi All, I was going through the SAS Advance Study material and found the following code to generate the Random Sample without replacement using RANUNI Function. data work.rsubset(drop=obsleft sampsize);
sampsize=10;
obsleft=totobs;
do while(sampsize>0);
pickit+1;
if ranuni(0)<sampsize/obsleft then do;
set sasuser.revenue point=pickit
nobs=totobs;
output;
sampsize=sampsize-1;
end;
obsleft=obsleft-1;
end;
stop;
run;
proc print data=work.rsubset heading=h label;
title 'A Random Sample without Replacement';
run; If I understand correctly the program is using the below logic to ensure that the same value is not entered again in the random sample. if ranuni(0)<sampsize/obsleft then do; Can someone help me in understanding that how above condition ensures that same values are not entered again in the Random Sample? How the fraction value of the sampsize/obsleft and its comparison with ranuni(0) ensures the uniqueness of the observation? Thanks in advance 🙂 P.S. I am using SAS 9.3
... View more