SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 791|回复: 5
打印 上一主题 下一主题

菜鸟请教transpose问题

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2008-7-8 12:16:54 | 只看该作者

菜鸟请教transpose问题

通过transpose可以将行列转换,不过不知道为什么,本人转换后里面的某些不见了,请高手赐教:
例如:
c:\test\qq.sas7bdat中的内容为:
a      b     c     d
11   12   13   14
21   22   23   24
31   32   33   34
但转置后内容却为:
Name  
b   12    22    32
d   14    24    34

执行语句为:
libname da "c:\test";
data ex;
set da.qq;
proc transpose;
proc print;run;
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2008-7-8 13:05:52 | 只看该作者

Re: 菜鸟请教transpose问题

data qq;
input a b c d;
cards;
11 12 13 14
21 22 23 24
31 32 33 34
;
run;
data ex;
set work.qq;
run;
proc transpose data=ex
  out=ex2;
var a b c d;
run;
标点符号分号应该是英文格式下的分号。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2008-7-8 13:57:35 | 只看该作者

Re: 菜鸟请教transpose问题

xgghxkhuang,谢谢您的指教。不过您说的这种我试过了,对于自己创建的data,那么在执行转置的时候是成功的,但现在的问题是我读取的是存在的data,所以每次都不行。是不是那个dataset中有什么限制呢?希望有高手再给予指点
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2008-7-8 14:23:30 | 只看该作者

Re: 菜鸟请教transpose问题

libname da "C:\test";
data ex;
set da.qq;
run;
proc print data=ex;
run;
proc transpose data=ex out=ex2;
var _all_;
run;
proc print data=ex2;
run;
试一下,复制黏贴运行。先看一下读到work里面的数据集合对不对,再看一下转置后的少没少。
如果不行,有可能是你的数据和你的sas型号不匹配,一般高版本的可以读取低的版本的,但是低的版本的无法读取高版本的。
你可以尝试双击这个集合,它会出现一个视图,里面是数据。然后他的libname因该是tmp等的,然后你再对tmp里面的那个集合转置就可以了。上面的代码先运行一下,试一下。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2008-7-8 14:33:36 | 只看该作者

Re: 菜鸟请教transpose问题

感谢xgghxkhuang 的指导,转置的时候添加了
proc transpose data=ex out=ex2;
var _all_;   //添加部分
run;
这样就ok了。这还真奇怪,呵呵
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
6#
 楼主| 发表于 2008-7-8 17:25:16 | 只看该作者

Re: 菜鸟请教transpose问题

transpose转职变量你没指定,所以结果不是你想得那样。
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2026-2-4 21:59 , Processed in 0.069410 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表