Random SAS随机抽样

Random SAS随机抽样,random,sas,Random,Sas,在SAS中,我创建了一个程序,该程序将从一个数据集中随机抽取50个观测值,并计算观测值的平均值 data subset (drop=i samplesize); samplesize=50; obsleft=totobs; do i=1 to samplesize; obsnum=ceil(ranuni(0)*totobs); set sashelp.baseball point=obsnum nobs=totobs; output; end; stop; run; proc s

在SAS中,我创建了一个程序,该程序将从一个数据集中随机抽取50个观测值,并计算观测值的平均值

data subset (drop=i samplesize);
samplesize=50;
obsleft=totobs;
do i=1 to samplesize;
  obsnum=ceil(ranuni(0)*totobs);
  set sashelp.baseball point=obsnum nobs=totobs;
  output;
end;
stop;
run;


proc sql;
select mean(nHome) from subset;
quit;

我想编辑代码,这样它将生成10个独立的随机样本,而不是一个(我知道reps=in Proc SurverySelect,但我不应该在这里使用它)。感谢

k/n算法选择固定数量的样本,每个样本的概率为1/n

%let SEED = 1234;

data mySurveySelection;

  retain k 10; drop k;
  length select_n_ 8;

  set sashelp.baseball nobs=n;

  if (ranuni(&SEED) <= k/n) then do;
    k = k - 1;
    select_n_ = _n_;
    output;
  end;
  n = n - 1;

  if n = 0 then stop;
run;
%let SEED=1234;
数据自我调查选择;
保留K10;降k;
长度选择_n_8;
设置sashelp.nobs=n;
if(拉努尼和种子)