完整word版各种常见随机化的SAS实现

上传人:feng****heng 文档编号:229601401 上传时间:2023-08-22 格式:DOCX 页数:7 大小:31.53KB
收藏 版权申诉 举报 下载
完整word版各种常见随机化的SAS实现_第1页
第1页 / 共7页
完整word版各种常见随机化的SAS实现_第2页
第2页 / 共7页
完整word版各种常见随机化的SAS实现_第3页
第3页 / 共7页
资源描述:

《完整word版各种常见随机化的SAS实现》由会员分享,可在线阅读,更多相关《完整word版各种常见随机化的SAS实现(7页珍藏版)》请在装配图网上搜索。

1、各种常见随机化的 SAS 实现在前两期的讲座中我们介绍了实验设计的三要素与四原则1,本期将结合实例重点阐述 实验设计中如何实现各种常见的随机化。随机化体现在如下三个方面2:抽样随机:每一 个符合条件的实验对象参加实验的机会相同,即总体中每个个体有相同的机会被抽到进入样 本之中。它保证所得到的样本具有代表性,使实验结论具有普遍意义;分组随机:每个实 验对象分配到不同组(通常为对照组、不同处理组)的机会相同。它保证大量难以控制的非 处理因素在对比组间尽可能均衡一致,以提高各组间的可比性;实验顺序随机:每个受试 对象先后接受处理的机会相等,它使实验顺序的影响也达到均衡。本期主要就如何用 SAS 实现

2、随机抽样和随机分组进行阐述。已知编号为1-20的 20例病人的基本信息见表1 。本文将以表1数据为例,阐述随机化 的 SAS 实现。表1 20例病人的基本信息病人编号12345678910性别FFMFFFMMMM年龄60643757413160645816病人编号11121314151617181920性别MMFFFFFMFF年龄586323372033394049421. 随机抽样目前在 SAS/STAT 模块中,有一个与调查设计有关的 SURVEYSELECT 过程。该过程可用来实现各种随机抽样,包括:单纯随机抽样、系统随机抽样、分层抽样、无限随机抽样 (有替换)、序贯随机抽样、以及按规模

3、大小成比例概率抽样(PPS)等。1.1 简单随机抽样的实现 简单随机抽样,就是从总体中不加任何分组、划类、排队等,完全随机地抽取受试对象。特点是每个个体(样品)被抽中的概率相等,各样品之间完全独立,彼此间无一定的关联性 和排斥性。简单随机抽样是其他各种抽样形式的基础。通常只是在总体样品之间差异程度较 小和数目较少时,采用这种方法。例 1:从编号为1 到 20 的人中用简单随机化的方法抽取10 名作为受试者。 用 SAS9.1.3 实现简单随机抽样的程序如下:data a;ods html;input id sex$ age;proc surveyselect data=acards;metho

4、d=srs n=10 out=b;1 F 60run;2 F 64proc print data=b;run;20 F 42ods html close;run;程序说明:首先,创建SAS数据集名为a。然后,调用SURVEYSELECT过程进行随机 抽样,并指定一些抽样选项,其中data二”指定输入数据集,用于指定抽样框;“method=”用于指定随机抽样的方法,srs表示单纯随机抽样;“n= ”用于指定抽样大小(此处可以用 “rate二”来替换,用于指定抽样率);“out= ”用于指定输出数据集,它包含所有被抽到的 样本(可以添加选项“rep二number ”来规定重复抽样的次数,如“rep

5、=2”命令系统同时抽 取2份样本)。最后用PROC PRINT把输出数据集b在输出窗口中显示出来。命令ods html 和ods html close用于把程序运行结果以网页格式保存下来。输出结果如下:Selection Method Simple Random SamplingInput Data SetARandom Number Seed 937359000Sample Size10Selection Probability0.5Sampling Weight2Output Data SetB以上是本次单纯随机抽样的基本信息,抽样方法是简单随机抽样(Simple Random Sampl

6、ing)。由于未指定SEED二选项来规定初始种子,来产生随机数字流。系统使用默认 种子作为初始种子(SEED=937359000),如果将来想重新抽取与本次完全相同的样本,可 以在抽样时指定同一种子。抽取的样本大小是10。抽样概率(Selection Probability)是指样本 被抽中的概率,此处为0.5。对于无分层的单纯随机抽样,样本的抽样概率是一致的。抽样 权重(Sampling Weight)是抽样概率的倒数,反映样本信息量的大小。Obsidsexage15F4126F31310M16411M58512M63613F23715F20816F33919F491020F42以上是PRO

7、C PRINT命令显示的输出数据集,包括所有被抽中的样本。第二列id显示 了被抽中的病人的编号。1.2分层随机抽样的实现 分层抽样,先依据一种或几种特征将总体分为若干个子总体,每个子总体称作一个层 然后从每层中随机抽取一个子样本,这些子样本合起来就是总体的样本。分层抽样所得的样 本具有较好的代表性,抽样误差较小。例2:将表1中的20例病人以性别为分层因素,抽取10名受试者。 用SAS9.1.3实现分层随机抽样的程序如下:ods html;strata sex;proc sort data=a;run;by sex;proc print data=b;run;run;proc surveysel

8、ect data=a method=srsods html close;n=(6 4) out=b;程序说明:数据步与例1相同,此处省略。过程步,SORT过程用于将数据集a排序, by语句指明按性别进行排序,此处排序方式为先F后M。SURVEYSELECT过程与例1的不 同之处在于选项n=(6 4),规定每层中得抽样大小,若每层抽样大小相同,可写为n=n1 的形式。此外,还多了一个STRATA语句,该语句用于指定分层变量。主要SAS输出结果如下:ObssexidageSelectionProbSamplingWeight1F4570.522F6310.523F13230.524F15200.5

9、25F19490.526F20420.527M3370.528M8640.529M11580.5210M18400.521.3 系统随机抽样的实现系统抽样,先按照某种顺序将总体中的个体(样品)从1N相继编号,并计算抽样距 离K=N/n。式中N为总体样品总数,n为样本容量。然后在1K中抽一随机数i,作为样 本的第一个被抽样品,接着取i+K, i+2K,,i+(n-1)K,直至抽够n个样品为止。值得注 意的是,当总体的被观察样品按顺序有周期趋势或增加(减少)趋势时,容易产生偏倚。例3:将表1中的20例病人按系统随机抽样的方法抽取5名受试者。 用SAS9.1.3实现系统随机抽样的程序如下:ods h

10、tml;run;proc surveyselect data=a method=sysproc print data=b;n=5 out=b;run;control id;ods html close;程序说明:数据步与例1相同,此处省略。SURVEYSELECT过程与例1的不同之处在 于选项method=sys,规定抽样方法为系统随机抽样法。此外,还多了一个control语句,该 语句用于指定排序的变量。SAS 输出结果如下:Obssexageid1F5742M6483M63124F33165F42201.4 整群抽样的实现整群抽样是先将总体分成若干群,从中随机抽取几个群;抽中群内的全部个体

11、(样品) 组成样本。可将整群抽样转化为简单随机抽样。例如,从10 班随机抽取5 个班作为受试对 象,可看做从10个个体中随机抽取5 个,即为简单随机抽样。2. 随机分组利用SAS软件实现随机分组的途径有很多,目前比较常用的是SAS/STAT模块的PLAN 过程,它可用于构建各种常见的试验设计并对设计方案进行随机化,也可用于产生数字的排 列组合表。笔者将介绍如何利用 PLAN 过程来实现两组和多组的随机分组。2.1 完全随机化的实现 完全随机化,直接对受试对象进行随机化分组,常通过掷硬币或随机数字表,或用计算 机产生随机数来进行随机化,在事先或者实施过程中不作任何限制和干预或调整。分组后各 组受

12、试对象的例数不一定相等。例4:将表1 中的 20例病人随机分为2 组。用 SAS9.1.3 实现简单随机分组的程序如下proc plan seed=20101216;/第一步*/data e;第四步*/factors a=20;set c;output out=sheji;group2=group;run;patient2=patient;data b c;第二步*/keep group2 patient2;set sheji;run;patient= n ;data f;第五步*/if a=10 then do; group= A;merge d e;output b; end;run;el

13、se do; group=B;ods html;output c;end;proc print noobs;/第六步*/run;run;data d;第三步*/ods html close;set b;group1=group;patient1=patient;keep group1 patient1;run;程序说明:第一步,调用PLAN过程产生20个随机排列数,并把结果输出至数据集sheji 中,选项seed二,规定产生随机数的种子。第二步,对数据集sheji进行操作,把病人按随机 排列数进行分组,随机数小于等于10的进入A组,其余进入B组,并将结果分别保存至数 据集b和c中。第三步和第四

14、步,分别将数据集b、c中的group改为groupl、group2,将 patient改为patient1和patient2,生成新的数据集d和e。最后把数据集d和e合并为新的数 据集f,并通过PRINT过程将随机分组的结果展现出来。SAS输出结果如下:group1 patient1A4A5A7A8group2 patient2B1B2B3B6group1patient1group2patient2A10B9A11B14A12B15A13B16A17B18A19B20例 5 将这 20 例病人随机分为 4 组。用 SAS9.1.3 实现简单随机分组的程序如下3:proc plan seed=2

15、0101216;data d3;factors a=20;set b3;output out=sheji;group3=group;run;patient3=patient;data bl b2 b3 b4;keep group3 patient3;set sheji;run;patient= n ;data d4;if a=5 then do; group=A; outputset b4;b1; end;group4=group;if 6=a=10 then do; group=B;patient4=patient;output b2; end;keep group4 patient4;if

16、 11=a=15 then do; group=C;run;output b3; end;data f;if16=a then do;group=D; outputmerge di d2 d3 d4;b4;end;run;run;ods html;data d1;proc print noobs;set b1;run;group1=group;ods html close;patient1=patient;keep groupl patientl;run;SAS 输出结果如下:group1patient1group2patient2group3patient3group4patient4A5B

17、4C1D2A7B8C6D3A10B11C9D14A13B12C15D18A19B17C16D202.2 分层随机化的实现分层随机化,首先对可能影响实验过程和结果的主要混杂因素(如年龄、性别、病情、疾病分期等)进行分层,然后在每一层内进行完全随机化分组,最后分别合并为实验组和对 照组。配对随机化和区组随机化可看成是分层随机化的实际应用。例6 将表 1 中的 20 例病人以性别为区组因素,随机分为2 组。将 20 例病人中的 12 名女性,编号为 1-12,按例 4 中的程序分为 2 组;8 名为男性,编 号为1-8,按例4 中的程序分为2 组,可以实现对这20例病人的区组随机化。例7现有来自3

18、个窝别的24 只大鼠,以窝别为区组因素,随机为4组,每组6 只。对大鼠进行编号,第一窝编号为18,第二窝编号为916,第三窝编号为1724。 用 SAS9.1.3 实现区组随机化的程序如下3,4:proc plan seed=201200505;data bb;factors block=3 length=8;set b;output out=sheji;group2=group;run;mouse2=mouse;data a b c d;keep group2 mouse2;set sheji;run;mouse= n ;data cc;if length=2 thenset c;do;gr

19、oup=A;output a;end;group3=group;else if 3=length=4 thenmouse3=mouse;do;group=B;output b;end;keep group3 mouse3;else if 5=length=6 thenrun;do;group=C;output c;end;data dd;else do;group=D;output d;end;set d;run;group4=group;data aa;mouse4=mouse;set a;keep group4 mouse4;group1=group;run;mouse1=mouse;da

20、ta e;keep group1 mouse1;merge aa bb cc dd;run;run;ods html;proc print noobs;run;ods html close;SAS 输出结果:group1mouse1group2mouse2group3mouse3group4mouse4A2B1C3D6A4B8C5D7A9B11C10D12A15B16C13D14A17B23C18D21A19B24C20D222.3 分层区组随机化在多中心试验中,区组随机化可以按中心分层进行,又称为分层的区组随机化。例 8 若有来自 2 个种系的大鼠,分别 24 只,每个种系分为各 3 个窝别

21、,随机分为 4 组, 每组12只。只需在例7的程序中,将“ factors block=3 length=8 ” 改为“ factors center=2 block=3 length=8 ”即可。2.4动态随机化在临床实验研究中,研究者常习惯将患者分为实验组与对照组,患者来医院就诊,若将 先来就诊的分入实验组,后来就诊的分入对照组,是不正确的。因为患者来医院就诊,在患 病严重程度、患病时间等重要非实验因素方面不一定是均衡的,可能带有某种程度上的“聚 集性”,即某一段时间上来的患者多数为重病患者,另一段时间上来的多数为轻病患者;若 规定第一个来就诊者分入实验组,第二个来就诊者分入对照组,这样交叉进行分组,最后也 可能两组患者在某些重要非实验因素方面相差悬殊,组间缺乏均衡性。有一种简便易行的随 机化分组方法叫“按不平衡指数最小的分配原则”分组5。此法也称为动态随机化法。前面的讲座中已经介绍了动态随机化的方法1。此处不再赘述。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!