楼主: ronaldocui99
4366 8

求问 SAS 变量值变为字段名称的方法 [推广有奖]

  • 0关注
  • 0粉丝

已卖:517份资源

本科生

29%

还不是VIP/贵宾

-

威望
0
论坛币
1033 个
通用积分
6.7709
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
845 点
帖子
66
精华
0
在线时间
83 小时
注册时间
2009-9-2
最后登录
2022-1-18

楼主
ronaldocui99 发表于 2015-8-6 16:38:55 |AI写论文
10论坛币
各位大牛,小白有问:
SAS中,如何将变量值变为标签,并且name击中这个分类 在分类值上加标志1,没有击中标0,求程序,多谢!!!

如 源数据
name   class
A         103
A         105
A         104
A         108
B         110
B         103
B         120
C         234

期望结果

name 103 104 105 108 110 120 234 256 267
A         1    1     1     1    0    0    0    0      0
B         1    0      0     0   1     1   0    0      0
C         0    0      0     0   0     0   1    0      0     
关键词:变量值 name 标签 程序 如何
飘渺

沙发
yongyitian 发表于 2015-8-6 16:38:56
  1. /* try this */
  2. data have;
  3. input name$ class;
  4. trans_var = 1;
  5. datalines;
  6. A         103
  7. A         105
  8. A         104
  9. A         108
  10. B         110
  11. B         103
  12. B         120
  13. C         234
  14. ; run;

  15. options missing=0;
  16. proc transpose data=have out=want (drop=_name_);
  17. by name;
  18. id class;
  19. *var trans_var;
  20. run;
复制代码

藤椅
穿在袜子上的脚 发表于 2015-8-6 17:16:52 来自手机
用proc transpose来做,倒置一下就好了,具体可以查下help,手机党不好写程序

板凳
FengOrz 发表于 2015-8-6 22:49:20
PROC TRANSPOSE data=XX;
  ID class;       
  BY name;
run;

报纸
FengOrz 发表于 2015-8-6 22:50:25
PROC TRANSPOSE data=XX;
  ID class;        
  BY name;
run;
發了兩次,不知怎麼刪回覆Orz

地板
慕白__·__慕思 发表于 2015-8-7 15:19:06
领教了

7
teqel 发表于 2015-8-8 00:14:51
PROC TRANSPOSE data=aa out=dd(drop=_name_);
   ID class;        
   BY name;
run;

data dd (drop=i);
set dd;
array a{*} _numeric_;
do i=1 to dim(a);
a(i)=coalesce(a(i), 0);
end;
run;

8
teqel 发表于 2015-8-8 00:16:05
不知道为什么在我这里do over不好用

9
忍冬的秋 发表于 2015-8-8 09:19:39
前面大神  貌似少了一个var
PROC TRANSPOSE data=a out=dd(drop=_name_);
ID class;        
BY name;
var class;
run;

data dd (drop=i);
set dd;
array a{*} _numeric_;
do i=1 to dim(a);
if missing(a(i)) ~= 1 then a(i)=1;
else a(i)=0;
end;
run;

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 13:36