楼主: math_663445391
10421 11

求sas转置问题 [推广有奖]

  • 0关注
  • 0粉丝

本科生

60%

还不是VIP/贵宾

-

威望
0
论坛币
4 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1776 点
帖子
72
精华
0
在线时间
47 小时
注册时间
2008-10-8
最后登录
2015-6-8

楼主
math_663445391 发表于 2013-4-21 12:54:48 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
求助,
这个数据在sas中怎么转置呢,用proc transpose尝试很多次都没有成,我用sql可以很容易实现
原数据:
1 zhangsan 语文 59
1 zhangsan 数学 86
1 zhangsan 英语 75
2 lisi 语文 78
2 lisi 数学 85
2 lisi 英语 78
想通过transose变成
zhangsan 59 86 75
lis 78 85 78
二维码

扫码加我 拉你入群

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

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

关键词:Transpose Trans Hang pose NGS 英语 数学 语文

out.jpg (11.11 KB)

原数据

原数据

sorce.jpg (20.77 KB)

结果数据

结果数据

沙发
math_663445391 发表于 2013-4-21 12:57:20
不好意思,贴的图把原数据和结果数据弄反了,贴的图我是通过sql实现的,但是transpose一直没弄成功

藤椅
Eternal0601 发表于 2013-4-21 13:26:13
data raw;
        input no name $ subject $ score;
datalines;
1 zhangsan Chinese 59
1 zhangsan Math 86
1 zhangsan English 75
2 lisi Chinese 78
2 lisi Math 85
2 lisi English 78
;
run;

proc transpose data=raw out=final(drop=_name_);
        var  score;
        id subject;
        by no name;
run;

板凳
math_663445391 发表于 2013-4-21 21:31:13
Eternal0601 发表于 2013-4-21 13:26
data raw;
        input no name $ subject $ score;
datalines;
非常感谢~

报纸
math_663445391 发表于 2013-7-25 21:27:11
再请教一下,如果反过来想把数据转置
zhangsan 59 86 75
lis 78 85 78

变成下面的呢
1 zhangsan 语文 59
1 zhangsan 数学 86
1 zhangsan 英语 75
2 lisi 语文 78
2 lisi 数学 85
2 lisi 英语 78

地板
yueCynthia 发表于 2014-2-25 18:05:32
math_663445391 发表于 2013-7-25 21:27
再请教一下,如果反过来想把数据转置
zhangsan 59 86 75
lis 78 85 78
...我看到的好晚..你肯定搞明白了..
我用的
proc transpose data=final out=raw1;                                                                                                     
        var Chinese math english;                                                                                                      
        by no name;                                                                                                                     
run;
就给变回来了..不过我是试出来的

7
chengcheng004 发表于 2014-2-27 01:44:51
我正在开始学习sql,不知道能不能请教你一下,这种的transpose 怎么用sql实现呢?
多谢啦

8
龙潭丰乐 学生认证  发表于 2014-2-28 16:05:53
  1. data quan1;
  2. input         name$ course$ score;
  3. cards;
  4. zhangsan a 59
  5. zhangsan b 86
  6. zhangsan c 75
  7. lisi a 78
  8. lisi b 85
  9. lisi c 78
  10. run;
  11. data quan3;
  12.   do i=1 to 3;
  13.    set quan1;
  14.     array a[3]$ a1-a3;
  15.          a(i)=score;
  16.         end;
  17. keep name a1-a3 ;
  18. run;
复制代码
也可以利用data步

9
ightar 发表于 2015-1-29 15:00:42
Eternal0601 发表于 2013-4-21 13:26
data raw;
        input no name $ subject $ score;
datalines;
学习了 学习了

10
荒漠之驴 发表于 2016-8-5 23:55:24
ightar 发表于 2015-1-29 15:00
学习了 学习了
你好,怎么转回来呢?

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

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