楼主: 胖胖小龟宝
3091 1

[学习分享] 在SAS中进行随机抽样 [推广有奖]

大师

21%

还不是VIP/贵宾

-

TA的文库  其他...

龟宝的档案室

威望
3
论坛币
793110 个
通用积分
21961.2355
学术水平
2211 点
热心指数
2133 点
信用等级
1424 点
经验
979070 点
帖子
10001
精华
25
在线时间
4757 小时
注册时间
2012-7-27
最后登录
2020-12-21

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1、在实际数据处理中常常需要进行样本抽样,在实践中主要有两种情况:
(1)简单无重复抽样
(2)分层抽样   a.等比例分层抽样  b. 不等比例分层抽样
2、SAS 中可以利用PROC suveryselect 过程实现各种抽样
其一般形式是:          PROC SURVEYSELECT  data=<源数据集名> method = <srslursl sys >  out=<抽取样本存放的数据集> n=<抽取数量>(or samprate=抽样比例) seed =n;           
strata <指定分层变量>;         
id <指定抽取的样本所保留的源数据集变量>;
run;

说明:method用来指定随机抽样方法的,其中SRS是指不放回简单随机抽样(Simple Random Samping);urs是指放回简单随机抽样(Unrestricted Random Sampling);sys是指系统抽样(Systematic Sampling)。seed用来指定随机种子数,为非负整数,取0则每次抽取的样本不同,若取大于0的整数,则下次抽样时若输入相同值即可得到相同的样本;id是指定从源数据集复制到样本数据集的变量,若缺省,则复制所有变量。

  3、简单无重复随机抽样举例:
      /*按30%的比例从test数据集中抽取样本,并把样本输出到results数据集中*/
    proc surveyselect  data=test1 out=results1  method=srs samprate=0.3;
    run;

4、分层等比例随机抽样举例;
proc sort data=test2;
by 分层变量;
run; /**先用分层变量对总体样本进行排序/
proc surveyselect  data=test2 out=results2 method=srs samprate=0.1;
strata 分层变量;
run;  /*根据分层变量等比例从总体中抽取样本*/

5、分层不等比例抽样举例;
(1)手工设置抽样比例或者抽样数
proc sort data=test3;
by 分层变量;
run;                                                                   /**先用分层变量对总体样本进行排序/
proc surveyselect  data=test3 out=results3 method=srs
samprate=(0.1,0.3,0.5,0.2);                           /*根据分层情况设置每一层要抽取的比例*/
strata 分层变量;
run;                                                                /*根据分层变量不等比例从总体中抽取样本*/
   
proc surveyselect  data=test3 out=results3 method=srs
n=(30,20,50,40);                           /*根据分层情况设置每一层要抽取的样本数*/
strata 分层变量;
run;            
(2)根据抽样表进行不等比例抽样
proc sort data=test3;
by 分层变量;
run;                                                                   /**先用分层变量对总体样本进行排序/
proc surveyselect  data=test3 out=results3 method=SRS
samprate=samp_table;                           /*通过抽样比例数据集进行抽样,samp_table数据集中要包括分层变量 以及每一分层对应的抽样比例或者数量,如果按比例抽样变量必须用_rate_来命名抽样比例,如果是按数量抽样必须用_nsize_来命名抽样数量*/
strata 分层变量;
run;            
6、关于surveyselect过程的更多内容详见SAS帮助
      在命令栏输入 help surveyselect  然后按enter键即可。



二维码

扫码加我 拉你入群

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

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

关键词:随机抽样 surveyselect unrestricted Systematic Restricted Random method 样本

沙发
huangpengfei 发表于 2014-2-17 15:36:09 |只看作者 |坛友微信交流群
抽样也可以用:用data步可以进行等距抽样和重复抽样及不重复抽样。
楼主能否把你分享抽样方法的书籍分享一下,谢谢

使用道具

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

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

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

GMT+8, 2024-5-2 11:28