�学术讨论�
* 第一军医大学流行病与卫生统计学在读博士
两种 Fisher精确检验算法的模拟比较
暨南大学统计学系( 510632) � 王斌会
� � 本文对文献 1!进行研究, Monte Carlo 模拟结果
比较
表
关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf
明,两种方法所得结果相差不大,只是在一些极
端情况下才会出现不同。由于两种方法分歧在于是以
观察到的四格表所对应的概率大小为基准求相应概率
之和 2!,还是以观察到的四格表的实际频数与理论频
数的差值为基准求相应概率之和 3, 4!, 因而出现一些
不同结果,而究竟以何为准, 目前还没有一致的结果。
而文献 5!认为:只有两个行合计或者两个列合计数值
一样时,两种算法的结果才会一致。本文的模拟研究
也支持该观点, 但前提是两组的例数都较大, 但这时并
不需要进行精确检验。
本文还对几个实例应用 SAS, SPSS, STATA 和
EPI- INFO等软件进行比较,结果是这些软件所得结
果大都与 SAS算法相同。
Fisher精确检验的两种算法
1�SF 算法
以 a表示四格表中第一行第一列所对应的频数,
设 ao 表示实际观察到的四格表中a 的观察值,在四格
表边沿合计固定的条件下,所有 a ∀ ao的四格表出现
的概率之和称为左侧概率;所有 a # ao的四格表出现
的概率之和称为右侧概率;以 a = ao的四格表出现的
概率(记为 p o) 为基础, 求出概率小于等于 p o 的所有
四格表的概率之和称为双侧概率。
2�TF 算法
ao的意义同上, 设 T o表示ao 所对应的理论频数,
记 ao- T o = ∃ ,以 ∃为基准,在四格表边沿合计固定
的条件下,求出所有四格表中 a - T # ∃的概率之和
即为单侧概率;记 | ao- T o | = | ∃ | ,求出所有四格表
中 | a - T | #| ∃ | 的概率之和即为双侧概率。
Monte Carlo模拟结果
1� 抽样实验 1
在两个按一定要求设计的总体中按二项分布进行
抽样实验,用计算机随机产生样本含量分别为 10, 20,
40, 100, 200, 400和 10, 20, 40, 100, 200 的甲乙样本,
共有 30种组合,两总体率分别取相等(本文取 �1= �2
= 0�7)及不等, 为了便于比较 II 型误差, 对不等的情
形皆取两个不同的值(本文取 �1= 0�9,�2= 0�4 和 �1
= 0�3,�2= 0�6两种)。每种组合随机抽取 1000个四
格表, 共抽取 30000 % 3个四格表, 分别用 SF 算法和
T F 算法计算 I 型误差率和 II 型误差率(整个实验的
检验水准都取 0�05) ,然后对计算结果进行比较和评
价。
表 1 � 抽样实验 1 两种方法双侧检验的 I 型误差率及功效
n 1 n 2
�(1) % 100%
SF TF ( 3)
1- ( 2) % 100%
SF TF (4) SF T F( 5)
10 10 1�4 1�4 46�1 46�1 14�7 14�7
10 20 2�8 2�8 73�5 73�5 25�0 25�0
10 40 3�5 3�5 84�2 82�3 30�1 29�4
10 100 3�1 3�1 93�4 93�4 42�2 42�2
10 200 2�3 2�0 93�5 93�5 43�3 43�3
20 10 3�3 3�3 80�6 80�6 27�6 27�6
20 20 2�9 2�9 90�9 90�9 34�3 34�3
20 40 5�2 5�2 98�2 98�1 53�5 51�6
20 100 2�5 2�3 99�5 99�5 67�6 67�6
20 200 4�0 3�9 100�0 100�0 66�9 66�9
40 10 3�9 3�9 91�6 91�6 35�2 35�2
40 20 3�2 3�1 98�6 98�6 55�2 54�9
40 40 3�0 3�0 99�9 99�9 72�7 72�7
40 100 4�1 3�8 100�0 100�0 88�9 88�9
40 200 2�6 2�2 100�0 100�0 94�6 94�6
100 10 2�4 2�0 94�9 94�9 42�8 44�3
100 20 4�0 3�8 99�6 99�6 71�7 71�7
100 40 4�3 3�9 100�0 100�0 91�1 91�1
100 100 3�8 3�8 100�0 100�0 98�9 98�9
100 200 4�2 4�2 100�0 100�0 100�0 100�0
200 10 2�8 3�0 94�0 94�0 41�8 44�5
200 20 4�7 4�3 100�0 100�0 74�7 74�7
200 40 3�9 3�8 100�0 100�0 93�2 93�2
200 100 2�7 2�7 100�0 100�0 99�8 99�8
200 200 4�0 4�0 100�0 100�0 100�0 100�0
400 10 3�2 3�3 95�1 95�1 43�7 46�3
400 20 3�7 3�7 99�8 99�8 77�2 77�8
400 40 4�7 4�6 100�0 100�0 95�4 95�4
400 100 5�0 4�9 100�0 100�0 100�0 100�0
400 200 6�0 5�7 100�0 100�0 100�0 100�0
( 1) �表示从两个相同总体中抽取 1000个样本的 I 型误差率; ( 2) 表
示从两个不同总体中抽取 1000 个样本的 II 型误差率; ( 3 ) �1 = �2 =
0�7; ( 4) �1= 0�9,�2= 0�4; ( 5)�1= 0�3,�2= 0�6
�114� � 中国卫生统计 2005年 4月第 22卷第 2期
� � 从表 1可以看出, I型误差率两种算法相差不大,
且两种检验方法的 II 型误差率也相差不大(即两种检
验的功效相近)。由于检验功效不仅与样本含量有关,
而且与 !(�1- �2)有关,从表 1中可知,当 != 0�5( 0�9
- 0�4)时,若 n1 与 n2 都大于 40,则两方法的功效相
同且为 100% ; 若 n1 或 n2 大于 40时,两方法的功效
也相同,且大于 80%。当 != 0�3(0�6- 0�3)时, 若 n 1
与 n2 都大于 100, 则两方法的功效相同且为 100%;
若 n1 或 n 2 之一大于 100, 而另一个大于 40时,两方
法的功效也相同,且大于 80%。特别值得注意的是当
n1= n2 时, 两算法不论是 I 型误差率还是功效都相
等。
2� 抽样实验 2
在两个按一定要求设计的总体中按二项分布进行
抽样实验, 用计算机随机产生样本含量分别为 5, 10,
15, 20和 5, 10, 15, 20的甲乙样本, 并取两样本例数相
等,共有 4种组合,并且每个四格表中至少有一个理论
频数小于 5, 两总体率分别取相等(本文取 �1= �2=
0�7)及不等,为了便于比较 II 型误差,对不等的情形
皆取两个不同的值(本文取 �1= 0�9,�2= 0�4 和 �1=
0�3,�2= 0�6两种)。每种组合随机抽取 1000个四格
表,共抽取 4000 % 3 个四格表, 分别用 SF 算法和 TF
算法计算 I 型误差率和 II 型误差率(整个实验的检验
水准都取 0�05) , 然后对计算结果进行比较和评价。
表 2 � 抽样实验 2 两种方法双侧检验的 I 型误差率及功效
n 1 n 2
�(1) % 100%
SF TF ( 3)
1- ( 2) % 100%
SF TF (4) SF T F( 5)
5 5 1�1 1�1 22�4 22�4 8�4 8�4
10 10 0�8 0�8 45�7 45�7 14�5 14�5
15 15 2�5 2�5 65�4 65�4 15�1 15�1
20 20 1�4 1�4 73�4 73�4 18�5 18�5
� � ( 1) �表示从两个相同总体中抽取 1000个样本的 I 型误差率; ( 2)
表示从两个不同总体中抽取 1000个样本的 II 型误差率; ( 3) �1= �2 =
0�7; ( 4) �1= 0�9,�2= 0�4; ( 5)�1= 0�3,�2= 0�6
� � 在抽样实验 2中, 由于两样本含量之和不超过
40,且每个四格表中至少有一个格子的理论频数小于
5,按通常的要求,这类资料最适用于精确概率检验,本
实验的结果也表明两种算法并无差别。
举例与软件结果比较
为了说明方便起见, 以下的例子只列出四格表(表
3)。
表 3� 几种统计软件结果比较
四格表
a b c d
SF 算法 TF 算法 SAS SPSS ST ATA EPI- INFO
9 1 21 19 0�0366 0�0366 0�0366 0�0366 0�0673 0�0366
9 11 9 1 0�0235 0�0235 0�0235 0�0235 0�0450 0�0235
10 0 8 12 0�0016 0�0016 0�0016 0�0016 0�0041 0�0016
6 4 34 6 0�0966 0�0966 0�0966 0�0966 0�1971 0�0966
� � 上面我们列举了四种国外最为流行的统计软件
包: SAS, SPSS, STATA 和 EPI- INFO精确概率结果,
从中发现,国外软件大都采用的是 SF 算法。
讨 � � 论
从模拟研究和举例分析我们发现一个有趣的现
象,只要我们在计算精确检验结果时假定总例数 n1+
n2 ∀ 40(在教课
书
关于书的成语关于读书的排比句社区图书漂流公约怎么写关于读书的小报汉书pdf
上 3, 4!一般都有这样的要求) , 那么
不论是用 SF 算法还是用 TF 算法,所得结果都是一样
的(见表 1~ 3) ,而文献 1!和文献 5!所举例的 n 1+
n2都远大于 40, 此时若其中的一些格子理论频数小
于 5的话,超几何概率分布将严重不对称, 根据 SF 算
法和 TF 算法给出的双尾概率容易出现不一致。所以
文献 1!和文献 5!提出的& SAS 软件包中精确概率的
算法( SF 算法)和一般教科书中所讲授的算法( T F 算
法)有较大差别∋的说法值得商榷。
参 � 考 � 文 � 献
1�胡良平, 张学中. SAS软件包中 Fisher 精确检验方法的分析.数理统
计与管理, 1994, ( 1) : 53�56.
2�SAS Institute Inc. SAS /STAT TM Guide for Personal Computers, Ver�
sion 6 Edition, Cary, NC ,USA. 1987.
3�郭祖超主编.医用数理统计方法.北京:人民卫生出版社, 1988.
4�杨树勤主编.卫生统计学.北京:人民卫生出版社, 1986.
5�刘瑁,张文君.关于& SAS软件包中 Fisher 精确检验方法的分析∋一文
的争鸣意见.数理统计与管理, 1998, ( 2) : 50�52.
�115�Chinese Journal of H ealth S tatist ics, Apr 2005, Vol. 22, No. 2