楼主: cinaiyimu
1806 3

[问答] SAS不规则数据清洗纵向变横向 [推广有奖]

  • 4关注
  • 0粉丝

硕士生

25%

还不是VIP/贵宾

-

威望
0
论坛币
881 个
通用积分
29.0613
学术水平
0 点
热心指数
2 点
信用等级
0 点
经验
1430 点
帖子
69
精华
0
在线时间
183 小时
注册时间
2016-6-8
最后登录
2023-5-23

10论坛币
有如下数据表一:

ID类型结局

1

1

1

2

1

2

0

6

2

1

1

5

2

2

1

1

2

3

1

3

2

4

0

5

2

5

0

4

2

6

0

0

3

1

1

1

3

2

0

.

3

3

1

5

3

4

0

4

4

1

1

2

4

2

0

.

4

3

0

1




想整理成表二:

ID 所有类型结局结局_1结局_2结局_3

1

10

2

6



2

111000

5




2

111000

1




2

111000

3

5

4

0

3

1010

1

.

3

1010

5

4



4

100

2

.

0




即每个类型1后的0,其结局都合并到它前面的1上。应该用什么函数,或者函数组合?proc transpose 我只会用来整理出“所有类型”这个变量。急,在线等。数据量非常大,希望能尽可能高效。结局有连续型变量也有分类变量。上述只是例子。叩谢各位大神~~~


关键词:600311 连续型变量 分类变量 类变量 连续型 sas 数据清洗 transpose 转置 纵变横
沙发
8112mmw 发表于 2018-8-28 09:53:41 |只看作者 |坛友微信交流群
感觉这个情况还是比较复杂,而且要建立一个新变量,估计是要用宏才能解决此事。

使用道具

藤椅
superguy333 发表于 2018-8-28 20:20:13 |只看作者 |坛友微信交流群
用retain语句可以搞定

使用道具

板凳
cinaiyimu 发表于 2018-8-30 09:21:57 |只看作者 |坛友微信交流群
superguy333 发表于 2018-8-28 20:20
用retain语句可以搞定
能详细说说吗?

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-2 02:05