楼主: 神月德
2517 3

sas变量不同取值字符连接问题 [推广有奖]

  • 1关注
  • 0粉丝

本科生

67%

还不是VIP/贵宾

-

威望
0
论坛币
10 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
837 点
帖子
52
精华
0
在线时间
99 小时
注册时间
2015-9-17
最后登录
2018-9-6

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1S{K1Q]]G7VIR[5SIBBWPTE.png
这里有不同的变量,我要在最后一列添加变量checks,sex=1时候checks=小猫,s1=1的时候checks=小狗,s4=1的时候checks=小猪,并且要把这几个结果连接起来形成checks,比如第一行记录结果就是小猫,小狗。
我写的命令如下
data want;
set have;
length checks$200.;
retain checks;
if sex=1 then checks="小猫";
if s1=1 then checks=checks||"小狗";
if s4=1 then checks=checks||"小猪";
run;

二维码

扫码加我 拉你入群

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

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

关键词:checks RETAIN length check Chec 记录 小狗 小猫

沙发
神月德 发表于 2016-1-5 16:39:49 |只看作者 |坛友微信交流群
我的命令结果不是我想要的,请问我的命令错在什么地方,谢谢了

使用道具

checks连接的时候,用strip函数把前后空格去掉就可以了。

  1. set have;
  2. length checks$200.;
  3. retain checks;
  4. if sex=1 then checks="小猫";
  5. if s1=1 then checks=strip(checks)||"小狗";
  6. if s4=1 then checks=strip(checks)||"小猪";
  7. run;
复制代码

使用道具

板凳
Tigflanker 发表于 2016-1-6 11:19:49 |只看作者 |坛友微信交流群
  1. data have;
  2.   input sex age s1 s2 s4;
  3.   cards;
  4.   1 11 1 0 0
  5.   0 22 1 0 1
  6.   1 33 0 0 1
  7.   ;run;

  8. data want;
  9.   set have;

  10.   checks = catx(',',ifc(sex = 1,'mao',''),ifc(s1 = 1,'gou',''),ifc(s4 = 1,'zhu',''));
  11. run;
复制代码
已有 2 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
moraine123 + 1 + 1 + 1 观点有启发
孤单的我们 + 5 + 1 + 1 + 1 精彩帖子

总评分: 论坛币 + 5  学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-26 14:07