SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 645|回复: 1
打印 上一主题 下一主题

如何从数据变量中提取相应的字段做统计?

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2009-6-24 11:26:19 | 只看该作者

如何从数据变量中提取相应的字段做统计?

数据集如下:
C_TRADEA2        C_IDENTI1
99900200000000116        110105196302222216
99900200000000256        110102196302233039
99900200000000272        110108790106002
99900200000000397        110105670330612
99900200000000421        110102390306151
99900200000000488        110102470516111
99900200000000496        110105590823542
99900200000000520        210103440225302
99900200000000579        110104351126170
99900200000000637        110108480304452
99900200000000686        110108620512548
99900200000000751        110102561129120
99900200000000777        370802197705313018
99900200000000843        110225550825657
99900200000000876        110102581021151
99900200000001015        110104630716202
99900200000001023        110104510510043
99900200000001213        110223500428106
99900200000001239        110108640206496
99900200000001254        110108660710232
99900200000001502        110104690821122
99900200000001775        110108681016978
99900200000001841        110102560526119
99900200000001866        610103195306103629
99900200000001924        110102701022041
99900200000001940        520102490906202
99900200000001965        450204196210111065
99900200000001981        110107511112272
99900200000002021        110104570916162
99900200000002195        110109197108030042
99900200000002351        110108490707372
99900200000002427        110106661103216
99900200000002492        110105192805050825
我要对C_IDENTI1进行字段提取然后做统计,如果变量长度为18为则取15-17位,如果变量长度为15位则取13-15位,取到的这个三位数,如果是奇数,代表“男性”,如果为偶数,代表“女性”,然后增加一列变量“性别”,对每一条记录都赋值“男性”或”女性“。请问如何做到?多谢!!
回复 支持 反对

使用道具 举报

0

主题

0

帖子

2

积分

新手上路

Rank: 1

积分
2
沙发
发表于 2009-6-24 13:54:15 | 只看该作者

Re: 如何从数据变量中提取相应的字段做统计?

[code:1d74mr2p]
data vicky;
set temp;
if length(C_IDENTI1)=18 then temp=mod(substr(C_IDENTI1,15,3),2);
if length(C_IDENTI1)=15 then temp=mod(substr(C_IDENTI1,13,3),2);
if temp=0 then gender='男性';
if temp=1 then gender='女性';
drop temp;
label gender="性别";
run;[/code:1d74mr2p]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-5 18:01 , Processed in 0.068653 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表