全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1530 7
2010-04-05
比如数据集A中有 48个观测,每连续3个一组,这样总共有48-3+1=46组,现从中抽取48个观测,从46组中随机抽一组,这样得到3个观测,然后再抽第二组,这样一直下去总共抽16次即可,这里考察重复抽样,也就是有的组可能多次被抽,为此编写的程序如下:

data a;

do i=1
to
48;

x=normal(0);

output;

end;

data b;

set a;

do j=1
to
16;

k=int(1+46*uniform(0));

if k le i and i le k+2
then
output;

end;

proc
print;run;
数据集b中的结果与事先预想的结果不一样,请问这个程序错在什么地方,如何编写满足上述要求的 程序,叩谢。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2010-4-5 12:26:42
data crackman;
do i=1 to 48;
x=normal(0);
output;
end;
run;
data crackman(drop=n i where=(z^=. and obs=1));
set crackman;
y=lag(x);
z=lag(y);
n=int(uniform(23)*100);
if n>=3 and n<46 then obs=1 ;
else obs=0;
run;
proc sql;
create table w1 as select x from crackman;
insert into w1  select y from crackman;
insert into w1  select z from crackman;
quit;
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-4-5 22:16:55
复制代码
data步可以搞定的,这个比较直观......希望是对的
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-4-5 22:17:28
复制代码
data步可以搞定的,这个比较直观......希望是对的
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-4-6 10:55:45
学习了 不错 ON也可以这样写
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2010-4-6 11:27:56
确实厉害,学习了
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群