SAS中文论坛

标题: SAS如何给数据矩阵转置? [打印本页]

作者: shiyiming    时间: 2008-6-1 19:15
标题: SAS如何给数据矩阵转置?
数据集如下:

control        control        case        control        case
AA        AA        AA        AA        AA
BB        BB        BB        BB        BB
BB        BB        BB        AB        AB
AA        AB        AB        AA        AB
BB        BB        BB        NoCall        BB
BB        BB        BB        BB        BB
BB        BB        BB        BB        BB
AB        AB        BB        BB        AB
BB        AB        BB        AB        AB

想行列转换后变成这种格式:
control        A A        B B        A B        B B        B B        B B
control        A A        B B        B B        B B        B B        B B
case        A A        B B        A B        A B        B B        B B
control        A A        B B        B B        A A        B B        B B
case        A A        B B        B B        A B        B B        B B
请教如何操作?
谢谢!
作者: shiyiming    时间: 2008-6-2 10:51
标题: Re: SAS如何给数据矩阵转置?
data a;
input control $ control2 $ case $ control3 $ case2 $ ;
cards;
AA AA AA AA AA
BB BB BB BB BB
BB BB BB AB AB
AA AB AB AA AB
BB BB BB NoCall BB
BB BB BB BB BB
BB BB BB BB BB
AB AB BB BB AB
BB AB BB AB AB
;
run;
proc TRANSPOSE data=a out=b;
var _all_;
run;
作者: shiyiming    时间: 2008-6-3 23:38
标题: Re: SAS如何给数据矩阵转置?
转置后是AA还是A A,中间有没有空格?
还有那个NoCall怎么转置后没啦?!
作者: shiyiming    时间: 2008-6-4 08:04
标题: Re: SAS如何给数据矩阵转置?
你把代码复制到sas运行就可以了。然后在work中看数据集合b就可以了。原来是AA,现在也是AA,我这里运行代码Nocall没有丢失呀。你将代码复制运行一下,我这里没问题呀。
作者: shiyiming    时间: 2008-6-4 13:37
标题: Re: SAS如何给数据矩阵转置?
[quote:2zx82ylc]转置后是AA还是A A,中间有没有空格?
还有那个NoCall怎么转置后没啦?![/quote:2zx82ylc]
这个问题是提给发帖人paulouise的!




欢迎光临 SAS中文论坛 (https://mysas.net/forum/) Powered by Discuz! X3.2