前情说明
我们在处理大样本的时候,往往会遇到随机抽样的需求,在SAS中抽样的方法有一个专门的Proc过程步(Proc surveyselect),这个过程步可以简单快速的实现一些随机抽样,有时候我们的随机抽样并不是那么呆版的抽样,这个时候proc surveyselect可能就不那么好用了,比如我们要质检一批数据,每个数据集观测都不一样,需要从每个数据集中随机抽取100条记录,如果不足100条则全部抽取出来...这个如何用proc surveyselect实现呢?反正小编是不会!当然仅仅是这,其实小编还是可以用proc surveyselect过程步做出来的,只是在抽样前获取数据集观测数,进行判断...如果小于指定观测,直接输出结果,如果大于则用抽样过程步进行简单的抽样!
那么如果抽样在稍微复杂一点,数据还要按照某个变量分组抽样,优先抽取某一类,如果这一类的样本不足抽取的数量,则在剩下的样本池中随机抽取!这个时候可能proc surveyselect更加无能为力了(也很有可能是小编见识不够)!当然还有更加复杂的抽样,按照各种分布抽样啥的!该如何去实现呢?
随机函数
看到这个标题!我聪明的粉丝朋友们,想必都已经知道了是什么方法去实现灵活复杂的随机抽样了!是的,这里需要介绍一下随机函数,利用随机函数给数据集的每一条观测一个随机数,然后根据随机数排序,取排序后的前100条观测...还是借用网络上的一张图,至于图中是否正确,这个留给诸位考证,小编是只用过ranuni函数给每条观测一个随机数,然后进行抽样!
小编认为方法比代码重要,这次就只分享方法了,具体代码其实都是很简单,都是一些基础的语句,有了方法,需求就很好实现。还是插一张图片~具体干嘛的,小编就不说了
...很早以前小编做的一个抽样的需求的...
凑字数?
内容真的很少!!!那么小编还是来凑一下字数,纠正一个错误!很久以前小编见识不够,认为SAS不能压缩ZIP,还特意去用Python实现一下,同样也是在很久以前,小编知道了SAS ODS也是可以把文件加压成ZIP文件的。所以就在这个隐蔽的角落承认一下错误
。还是来看一张图!
今天就这么多了,后续内容,敬请期待~