我用了简单随机抽样的方法srs对数据进行抽样,可是不懂怎么把每次抽出的样本赋值成X1、X2,我看了把字符型赋值成数值型,还是没有解决我的问题,以下是我根据题目自己编的程序
DATA My_SAMPLES;
DO I=1 TO 1000;
X=RANNOR(0);
OUTPUT;
END;
PROC surveyselect DATA =My_SAMPLES
method=srs n=2
REP=1000
out=SampleSRS;
DATA SampleSRS;
ARRAY X(2)X1-X2;
DO J=1 TO 2;
Y=X1=X2;
Z=X1-X2;
OUTPUT;
END;
PROC MEANS DATA=SampleSRS VAR;
VAR Y Z;
RUN;
日志窗口显示在ARRAY的步骤中存在缺失值(红字标示部分)
460 DATA My_SAMPLES;
461 DO I=1 TO 1000;
462 X=RANNOR(0);
463 OUTPUT;
464 END;
NOTE: 数据集 WORK.MY_SAMPLES 有 1000 个观测和 2 个变量。
NOTE: “DATA 语句”所用时间(总处理时间):
实际时间 0.00 秒
CPU 时间 0.01 秒
465 PROC surveyselect DATA =My_SAMPLES
466 method=srs n=2
467 REP=1000
468 out=SampleSRS;
NOTE: 数据集 WORK.SAMPLESRS 有 2000 个观测和 3 个变量。
NOTE: “PROCEDURE SURVEYSELECT”所用时间(总处理时间):
实际时间 0.03 秒
CPU 时间 0.03 秒
469 DATA SampleSRS;
470 ARRAY X(2)X1-X2;
471 DO J=1 TO 2;
472 Y=X1=X2;
473 Z=X1-X2;
474 OUTPUT;
475 END;
NOTE: 缺失值的生成是对缺失值执行操作的结果。
指定每个位置的方式: (次数)(行:列)。
2 473:5
NOTE: 数据集 WORK.SAMPLESRS 有 2 个观测和 5 个变量。
NOTE: “DATA 语句”所用时间(总处理时间):
实际时间 0.00 秒
CPU 时间 0.00 秒
476 PROC MEANS DATA=SampleSRS VAR;
477 VAR Y Z;
478 RUN;
NOTE: 从数据集 WORK.SAMPLESRS 读取了 2 个观测。
NOTE: “PROCEDURE MEANS”所用时间(总处理时间):
实际时间 0.00 秒
CPU 时间 0.01 秒
在ARRAY这步还是不懂怎么把抽出的样本读成X1、X2,请教各位大神这个该怎么解决?