全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
11646 34
2012-05-09
悬赏 500 个论坛币 已解决
下图是部分人口普查数据,R2=0表示户主、R2=2表示子女,R4_1表示年龄,H1表示家庭户编号。
希望用SAS编程,输出第一个孩子出生时按户主年龄分组的家庭户数、最后一个孩子出生时按户主年龄分组的家庭户数、按最小孩子年龄分的家庭户数。附件的EXCEL文件中也包含下表的数据。




12345.jpg

aaa.xls

大小:13.5 KB

 马上下载

最佳答案

denver 查看完整内容

如果没有理解错的话,n1-n3是你想要的结果。 钱就算了,我也是学习累了休息一下的,还可以顺便做个小练习,如果符合你的要求,给个评分就好了。
二维码

扫码加我 拉你入群

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

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

全部回复
2012-5-9 23:49:09
如果没有理解错的话,n1-n3是你想要的结果。
钱就算了,我也是学习累了休息一下的,还可以顺便做个小练习,如果符合你的要求,给个评分就好了。
复制代码
二维码

扫码加我 拉你入群

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

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

2012-5-10 09:16:02
楼上的代码可以,如果您有不明白的地方,我可以详细的跟您说
二维码

扫码加我 拉你入群

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

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

2012-5-10 12:49:19
pl172231 发表于 2012-5-10 09:16
楼上的代码可以,如果您有不明白的地方,我可以详细的跟您说
帮我解释下下面几句程序的意思吧。谢谢!

proc sort data=aaa; by h1 r2 r4_1;run;

proc sql;

        create table merge as

        select a.*, b.*,min(b.r4_1-a.r4_1) as age1, max(b.r4_1-a.r4_1) as age2, max(b.r4_1) as age3

        from parent as a left join children as b

        on a.h1=b.h1

        group by a.h1

        order by a.h1;

quit;



data merge1;

        set merge;

        by h1;

        if first.h1;

run;



proc sql;

        create table final as

        select a.*, count(a.age1) as n1

        from merge1 as a

        group by age1;


二维码

扫码加我 拉你入群

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

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

2012-5-10 12:53:10
denver 发表于 2012-5-10 00:48
如果没有理解错的话,n1-n3是你想要的结果。
钱就算了,我也是学习累了休息一下的,还可以顺便做个小练习, ...
谢谢您的解答!论坛币我已经支付出去了,如果您的答案合适,我会设置为最佳答案的(我大致看了下好像符合我的要求)。
可以帮我解释下下面几句程序的意思吗?

proc sort data=aaa; by h1 r2 r4_1;run;

proc sql;

        create table merge as

        select a.*, b.*,min(b.r4_1-a.r4_1) as age1, max(b.r4_1-a.r4_1) as age2, max(b.r4_1) as age3

        from parent as a left join children as b

        on a.h1=b.h1

        group by a.h1

        order by a.h1;

quit;



data merge1;

        set merge;

        by h1;

        if first.h1;

run;



proc sql;

        create table final as

        select a.*, count(a.age1) as n1

        from merge1 as a

        group by age1;


二维码

扫码加我 拉你入群

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

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

2012-5-10 16:41:50
proc sort data=aaa; by h1 r2 r4_1;run;
这是排序程序,意思是对aaa这个数据集的内容进行排序,怎么排?by语句指定,先按h1排,h1一样的再按r2排r2一样的再按r4—1排
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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