全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2340 2
2012-03-11
自己在看李东风老师写的教材,这是一到习题:用宏生成20个数据集D1-D20, 其中每个数据集包含50行,101个变量(1-100为标准正态分布随机数,101为行号变量R);目前我用数据步写出了单一数据集的过程,但是不知道怎么把它用宏表示出来并重复调用20次;请求前辈们帮助我,感激不尽!


data pro(drop = j) ;

array x(100) ;

do R = 1 to 50 ;

do j = 1 to 100 ;

x(j) = rannor(0) ;

end ;

output ;

end ;

run ;

proc print ;

run ;


二维码

扫码加我 拉你入群

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

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

全部回复
2012-3-12 03:32:08
Here is a simple version.

%macro normal(dsn=, seed=);

data &dsn(drop = j) ;
array x(100) ;
        do R = 1 to 50 ;
                do j = 1 to 100 ;
                        x(j) = rannor(&seed) ;
                end ;
                output ;
        end ;
run ;

%mend;

%normal(dsn=d1, seed=-1)
%normal(dsn=d2, seed=-1)

proc print data=d1(obs=2);run;
proc print data=d2(obs=2);run;

二维码

扫码加我 拉你入群

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

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

2012-3-12 10:52:42
bobguy 发表于 2012-3-12 03:32
Here is a simple version.

%macro normal(dsn=, seed=);
十分感谢,受教了!
二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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