全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2412 7
2013-11-20
不用 proc SQL ,用 data step 如何找到年龄在平均年龄 +/- 10 的数据。  谢谢。
二维码

扫码加我 拉你入群

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

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

全部回复
2013-11-20 13:06:12
data b;
set a;
x=mean(var);
if  (x-10)<=var and (x+10)>=var then output b;
run;
二维码

扫码加我 拉你入群

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

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

2013-11-21 04:09:27
statistics_qin 发表于 2013-11-20 13:06
data b;
set a;
x=mean(var);
谢谢。
二维码

扫码加我 拉你入群

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

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

2013-11-21 08:59:44
statistics_qin 发表于 2013-11-20 13:06
data b;
set a;
x=mean(var);
你好, 但mean 函数在这里是对一行求平均。 不是做一列求平均。
二维码

扫码加我 拉你入群

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

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

2013-11-21 12:27:43
为何不用proc sql?那就只好用proc means;
data a;
input age;
cards;
12
23
34
56
78
;
run;

proc means data=a noprint;
        var age;
        output out=b(drop=_:) mean=meage;
run;

data c(drop=meage);
        merge a b;
        retain meage1;
        if first.id then meage1 =.;
        if not missing(meage) then meage1 = meage;
run;

run;

data d;
set c;
if (meage1-10)<=age and (meage1+10)>=age then output d;
run;
二维码

扫码加我 拉你入群

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

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

2013-11-22 09:39:30
statistics_qin 发表于 2013-11-21 12:27
为何不用proc sql?那就只好用proc means;
data a;
input age;
谢谢。 这正是我想要的。 我刚开始学SAS 。 知道用proc SQL   。 但想用Data step 去实现同样的功能。
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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