全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
1681 6
2015-12-15
暂时关闭,我觉得逻辑貌似有疏漏。。
----------------------------------------------------------------------------------

其实一直想写这么一个宏,今天得空写了一下,一开始觉得很难,着手写的时候发现其实挺简单。

目的:
用于从指定数据集中按抽取代表情况。
这样,我们在对一个数据集进行某种规则时,可以先抽取一个全部情况的样本,看看自己的逻辑是否完备。

描述:
大伙都用过PROC SORT的nodupkey吧?他是按照给定的几个字段对数据集进行一条一条的去重;
可是有时我们需要对数据集进行一组一组的去重,以获得一个有代表性的样本数据集。

如下例:

idgroup1group2value

1

1

1

1

1

2

1

2

1

3

1

3

1

3

2

4

1

4

1

5

1

5

1

6

2

11

1

7

2

22

2

8

2

33

3

9

3

1

1

10

3

2

1

11

3

3

1

12

3

3

2

13

3

4

1

14

3

5

1

15

4

11

1

16

4

22

2

17

4

33

3

18

5

11

0

19

5

22

2

20

5

33

3

21



这个例子,如果我们按照group1 + group2来看,id:1、2、5就可以代表这个数据集的不同情况
按照group1来看,id:1、2就可以代表这个数据集的不同情况。

程序:
复制代码



二维码

扫码加我 拉你入群

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

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

全部回复
2015-12-17 00:07:47
Tigflanker 发表于 2015-12-15 20:34
其实一直想写这么一个宏,今天得空写了一下,一开始觉得很难,着手写的时候发现其实挺简单。

目的:
宏功能太强大啦
二维码

扫码加我 拉你入群

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

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

2015-12-17 08:57:11
谢谢楼主,多多向你们学习
二维码

扫码加我 拉你入群

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

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

2015-12-17 09:16:50
二维码

扫码加我 拉你入群

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

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

2015-12-17 10:03:02
写这个程序的动机是:

对于某些临床试验的随访资料,每个病人一般来说都有(假说)7次访视,visit1 - visit7,
有些病人可能来不全,例如有一部分病人就是单单缺少访视3、访视4的资料,
也有些病人在访视5可能来了3次。

这个程序的祈愿就是能观察数据可能出现的情况,按照某种固定形式的数据,每个人各有不同,都有哪些变异,
下一步可能会考虑加上每组情况出现的频次;不过算法恐怕就不能这么简单了。
二维码

扫码加我 拉你入群

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

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

2015-12-17 11:26:59
有个疑问:你这个例子是前面的ID把后面的ID给覆盖了,所以能去掉后面重复的ID。如果前面的组合比后面的小,则两个都会保留?
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群