随机分组与随机抽样的统计电脑实验
统计软件产生的随机数是用数学方法计算出来的,严格来讲,它不是真正意义上的随机数,因而称为伪随机数(pseudo random number)。伪随机数具有随机数的性质,即等可能性,无序性。同一软件用相同种子数所产生的伪随机数是一样的,统计学上称为重现性,这一特点使得科学研究中使用伪随机数进行随机化更严谨更科学,也经得起他人的核查或验证。另外,采用计算机随机程序产生的随机数字,随机数字序号、分组与随机数字表法不太相同,但都遵循随机的原则,结果也都正确,方法皆可用。
【实验2-1】对例2-1进行随机化分组。
1.数据文件 如图2-1所示,以“编号”为变量名,建立1列10行的数据集E0201.sav。
图2-1 数据集E0201.sav
2.操作步骤
(1)产生随机数之前的设置 Transform(转换)→Random Number Generators(随机数发生器)→在随即出现的视窗中选Set Starting Point,点击Fixed Value(固定种子数),在Value框内输入1000→OK→回到数据编辑窗口。
注:本步是固定种子数,为实现重现性而设置,即在新的数据视窗里,如此设置,得出的伪随机数是一样的。若不考虑重现性,本步可省略。不过一般情况下有此步为好。另外,SPSS随机分组结果与正文随机数字表法不同。
(2)产生随机数 Transform(转换)→Compute Variable(计算),在Target Variable(目标变量)框中输入“随机数”;在Function group(函数类别)列表框中选择Random Numbers(随机数),然后在Functions and Special Variables(函数和专用变量)列表框中选择Rv.Uniform(随机变量函数)送入Numeric Expression(数学表达式)框中,将RV.UNIFORM(?,?)(产生指定值间均匀分布的随机数)中的(?,?)改为(0,1)→OK。
(3)随机数排序 Transform(转换)→Rank Cases(编秩次)→将“随机数”变量移入Variable(s)框内→OK。
在数据集里增加了一列名为“R随机”变量的秩次。
(4)分组 Transform(转换)→Rcode into Different Variables→“R随机”变量→Numeric Variable框内→Output Variable框,在Name框中键入“组别”→Change→点击Old and new Values,选中Old Value栏内的Range选项,在框中输入“1”,在through框中输入“5”;在New Value栏内,选中Value,在其框内输入“1”→Add,这样就在Old→New框中增加了“1 thru 5→1”为第1组,同理,设置“6 thru 10→2”为第2组→Continue→OK。
如此建立了新变量“组别”,并增加到原始数据集中。
(5)组别排序与优化 Data→Sort Cases→将“组别”变量移入Sort by框内→OK。
在变量视窗(Variable View),将“编号、组别”变量的小数位数(Decimals)都设置为0。组别变量赋值:1=“A”,2=“B”。
3.主要结果 在数据视窗(Data View)出现的变量“编号”与“组别”对应的数字即为随机分组的结果。编号为2、4、5、6、10的小鼠为A组,1、3、7、8、9号的小鼠为B组。
【实验2-2】对例2-2进行分层随机化分组。(配对相当2层,区组配伍相当多层)
1.数据文件 如图2-2所示,以“编号”和“区组”为变量名,建立2列15行的数据集E0202.sav。
图2-2 数据集E0202.sav
2.操作步骤
(1)至(2)步骤 同实验2-1,注意固定种子数仍为1000。
(3)随机数排序 Transform(转换)→Rank Cases(编秩次)→将“随机数”变量移入Variable(s)框内,“区组”变量移到by框内→OK。
(4)变量重新命名 在变量视窗(Variable View),将“R随机数”变量改为“处理组别”。
(5)变量排序与优化 Data→Sort Cases→将“区组”与“Rank of随机数by区组(处理组别)”变量依次移入Sort by框内→OK。
在变量视窗(Variable View),将“编号、区组、处理组别”变量的小数位数(Decimals)都设置为0。处理组别变量赋值:1=“A”,2=“B”,3=“C”。
3.主要结果 在数据视窗(Data View)出现的变量“编号”“区组”与“处理组别”对应的数字即为分层随机分组的结果。
编号为2、6、8、11、15号的5只小白鼠,接受甲复方中药,为A组;编号为3、4、9、10、14号的5只小白鼠,接受乙复方中药,为B组;编号为1、5、7、12、13号的小白鼠,接受丙复方中药,为C组。
【实验2-3】对例2-3进行单纯随机抽样。
1.数据文件 如图2-3所示,以“编号”“性别”与“年龄”为变量名,建立3列20行的数据集E0203.sav。
图2-3 数据集E0203.sav
2.操作步骤
(1)产生随机数之前的设置 同实验2-1。
(2)单纯随机抽样 Data→Select Cases→点击Random sample of cases下的Exactly按钮,在其对应的前后两个空白框内分别输入10与20→Continue→OK。
上述为定量抽样,点击Approximately,可进行比例抽样。
这样在原数据集中增加了一列系统命名为“filter_$”的变量,其数值1为抽到的观察值,0为未抽到的观察值且用斜杠在左面系统默认的标号中标出。
(3)优化 Data→Sort Cases→移“filter_$”变量入Sort by框内→选Descending→OK。
可根据需要,进一步对数据集加工、存储与分析。
3.主要结果 编号为2、4、6、7、8、9、11、14、16、20的10名患者被抽到。
注:SPSS软件编程实现随机抽样与随机分组更为简捷,读者可参考有关书籍或上网搜索而得。另外,上述菜单模块操作之后在输出视窗中也给出相应的SPSS程序。