全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1993 6
2007-06-11

问题:我想将一组数据,如3408xy,6221gf,2210fj,3408as,6221gf,6324qx,2210hi,7709jh,......。这样的数据归类分组和统计,假设像3408,6221是各省身份证的前四位,后面是他们的具体代码,我想知道这组数据涉及到几个省份,也就是说前面四位相同的我们就看成同一省份,这样就能统计涉及到的省份的个数。

我想请教各位大虾,能用SAS编程实现这个过程吗?用其他方法呢,望各位不吝赐教!先谢谢了

二维码

扫码加我 拉你入群

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

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

全部回复
2007-6-11 08:33:00

substr或者compress

然后proc freq

二维码

扫码加我 拉你入群

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

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

2007-6-11 08:45:00

是先截取字符串,再用频数分布吗?

能不能帮忙写个程序,运行以后就知道结果呢?

二维码

扫码加我 拉你入群

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

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

2007-6-11 09:00:00
data a;
input x $20.;
datalines;
3408xy
6221gf
2210fj
3408as
6221gf
6324gx
2210hi
7709jh
;
run;
data b;
set a;
y=substr(x,1,4);
proc freq;
tables y;
run;
二维码

扫码加我 拉你入群

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

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

2007-6-11 12:10:00

谢谢,但是能能帮我再做一下呢?

我想知道的是省份是多少,tables y中你是把频数归类了,但是我想知道归完类的省份有多少是不是应该一个一个数?

我现在就想要是我以后碰到更难的,归完了类列出了上千个,我怎么数啊?能不能将tables中的变量y输出像a,b那样的数据集啊?再统计y的数目。

谢谢!

二维码

扫码加我 拉你入群

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

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

2007-6-11 21:19:00
data a;
input x $20.;
datalines;
3408xy
6221gf
2210fj
3408as
6221gf
6324gx
2210hi
7709jh
;
run;
data b;
set a;
y=substr(x,1,4);
proc freq;
tables y/noprint out=c (drop=PERCENT);
run;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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