SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

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

请教数据集拉直(转置)问题两个

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2009-7-15 20:54:56 | 只看该作者

请教数据集拉直(转置)问题两个

[color=#FF0000:193xujdf]问题一:如何根据原始数据集自动生成数据集2[/color:193xujdf]
原始数据集
name             age               weight
----------------------------------------------------
mary               13                  56
mary               14                  60
mary               18                  62
allic              12                  50
allic              13                  51

数据集2
age               mary               allic
--------------------------------------------------
12                 .                     50
13                  56                   51
14                  60                    .
18                  62                    .
[color=#FF0000:193xujdf]问题二:根据更新后的原始数据更新数据集2[/color:193xujdf]
name             age               weight
----------------------------------------------------
mary               13                  56
mary               14                  60
mary               18                  62
allic              12                  50
allic              13                  51
[color=#FF0000:193xujdf]sam                17                  63
sam                18                  64[/color:193xujdf]

生成
age               mary               allic                   [color=#FF0000:193xujdf]sam[/color:193xujdf]
----------------------------------------------------------------
12                   .                   50                   .
13                  56                   51                   .
14                  60                    .
17            .     .                     .                   63
18                  62                    .                   64

本人初学SAS望各位给予指点
回复 支持 反对

使用道具 举报

0

主题

0

帖子

2

积分

新手上路

Rank: 1

积分
2
沙发
发表于 2009-7-16 10:25:55 | 只看该作者

Re: 请教数据集拉直(转置)问题两个

没看出2个问题的差别~~
[code:2bn8f9z5]
proc sort data=v;
by age;
run;
proc transpose data=v  out=v_transpose(drop=_name_);
by age ;
id name;
run;[/code:2bn8f9z5]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2009-7-16 11:20:49 | 只看该作者

Re: 请教数据集拉直(转置)问题两个

多谢!我刚才做了一下表,能够转置谢谢, 问:是否可以只添加更新后的数据?
回复 支持 反对

使用道具 举报

0

主题

0

帖子

2

积分

新手上路

Rank: 1

积分
2
地板
发表于 2009-7-16 11:33:37 | 只看该作者

Re: 请教数据集拉直(转置)问题两个

不明白你的意思~~
旧数据添加新的行观测,然后输出对应增加列,但不重新转置原数据?
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2009-7-16 19:26:41 | 只看该作者

Re: 请教数据集拉直(转置)问题两个

对就是你说的意思,最好是有条件的显示列,如增加姓名以S开头的列。谢谢
回复 支持 反对

使用道具 举报

0

主题

0

帖子

2

积分

新手上路

Rank: 1

积分
2
6#
发表于 2009-7-17 10:46:45 | 只看该作者

Re: 请教数据集拉直(转置)问题两个

要条件的话随便哪里塞个where就行。
如果原来数据比较大,更新数据比较小的话,我能想到的就是同样的方法转置更新数据,然后跟旧转置数据merge……
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2026-2-5 21:31 , Processed in 0.074038 second(s), 20 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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