楼主: 龙战于野
2307 5

请问:SAS如何实现数据透视? [推广有奖]

  • 0关注
  • 0粉丝

已卖:121份资源

硕士生

96%

还不是VIP/贵宾

-

威望
0
论坛币
29 个
通用积分
0
学术水平
0 点
热心指数
2 点
信用等级
1 点
经验
4204 点
帖子
129
精华
0
在线时间
300 小时
注册时间
2009-3-8
最后登录
2022-6-1

楼主
龙战于野 发表于 2014-10-28 21:35:53 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请教:SAS环境下如何实现数据透视?
例:对于以下数据集
name  count
AA    12
BB    16
AB    21
AA    15
CC    23
AA    23
AB    32
如何编程实现以下结果

name

求和项:count

AA

50

AB

53

BB

16

CC

23

总计

142


二维码

扫码加我 拉你入群

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

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

关键词:如何实现 Count name 数据集 A50 count 如何

沙发
420948492 发表于 2014-10-28 22:10:37
  1. data test;
  2. input name$ count;
  3. cards;
  4. AA 12
  5. BB  16
  6. AB  21
  7. AA  15
  8. CC  23
  9. AA  23
  10. AB 32
  11. ;
  12. run;

  13. *method1;
  14. proc sql;
  15. select distinct name,sum(count) as n from test
  16. group by name
  17. order by name;
  18. quit;

  19. *method2;
  20. proc tabulate data=test;
  21. class name;
  22. var count;
  23. table name,count;
  24. run;


  25. *method3;
  26. proc sort data=test;
  27. by name;
  28. run;

  29. data wanted;
  30. set test;
  31. by name;
  32. drop count;
  33. if first.name=1 then countsum=0;
  34. countsum+count;
  35. if last.name then output;
  36. run;
复制代码
  1. *method4;
  2. proc means data=test nonobs sum;
  3. var count;
  4. class name;
  5. run;

  6. *method5;
  7. proc freq data=test;
  8. tables name /nocol nocum nopercent;
  9. weight count;
  10. run;
复制代码
  1. *method6;

  2. proc report data=test;
  3. column name count;
  4. define name/group;
  5. run;
复制代码

已有 1 人评分论坛币 学术水平 热心指数 信用等级 收起 理由
龙战于野 + 5 + 1 + 1 + 1 精彩帖子

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

藤椅
龙战于野 发表于 2014-10-29 00:10:37
420948492 发表于 2014-10-28 22:10
原来那么简单,太感谢您了!

板凳
龙战于野 发表于 2014-11-6 20:29:30
420948492 发表于 2014-10-28 22:10
追问一句,如何把第四种方法的结果输出到数据集(横向)

报纸
420948492 发表于 2014-11-7 08:36:42
龙战于野 发表于 2014-11-6 20:29
追问一句,如何把第四种方法的结果输出到数据集(横向)
  1. *method4;
  2. proc means data=test nonobs sum;
  3. var count;
  4. class name;
  5. output out=r(drop=_type_  _freq_)sum=sh;
  6. run;
复制代码

地板
Alice.n1ng 发表于 2022-2-24 18:10:20 来自手机
厉害啊,学习了,高手

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

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