注册 登录  
 加关注
查看详情
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

公卫人

博学而笃志 切问而近思

 
 
 

日志

 
 

SAS几种常见抽样方法的简单实现  

2018-08-07 15:16:13|  分类: 统计分析 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

在医学研究中大多数情况无法对所有整体进行全面研究,往往从中抽取一个具有代表性的样本进行分析,而随机抽样是是确定样本时一个应用最为普遍也是最为简单的方法。包括:单纯随机抽样(simple random sampling)、系统抽样(systematic sampling)、分层抽样(stratified sampling)、整群抽样(clustering sampling),相关概念见有关书籍,在这里利用SAS学习proc  surveyselect 过程的用法。

PROC SURVEYSELECT一般形式:

   Proc surveyselect data=<原数据集>

            Method=<srs|sys|urs|  /*抽样方法选择*/

            out=<抽取样本存放的数据集>

n=<抽取数量>(or samprate=抽样比例)

seed=n;

           strata <指定分层变量>;

           id <指定抽取的样本所保留的源数据集变量>;

run;

举例:建立数据集a1000个数据:data a ;do i = 1 to 1000 ;output ;end ;run ;

1简单无重复随机抽样,从中抽取100个数据

proc surveyselect data = a method = srs n = 100 out= b seed = 25070419 ;run ;

2、简单随机抽样,按10%的比例抽取:

proc surveyselect data =a method=srs samprate=0.1  out=b seed=25070419;run ;

3、系统抽样:在 1000 个数据中每隔 10 个抽取 1 个:

proc surveyselect  data = a  method = sys  sampsize =100 out = b seed = 25070416 ;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;            

  评论这张
 
阅读(24)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2018