---
title: 多重比較法の検討
tags:  #[第10回大阪sas勉強会]  
author: [森岡裕[SASユーザー総会世話人]](https://convert.docswell.com/user/6484025)
site: [Docswell](https://www.docswell.com/)
thumbnail: https://bcdn.docswell.com/page/KJ49YL1371.jpg?width=480
description: [第10回大阪sas勉強会]
published: October 21, 24
canonical: https://convert.docswell.com/s/6484025/K4VEV8-2024-10-21-173223
---
# Page. 1

![Page Image](https://bcdn.docswell.com/page/KJ49YL1371.jpg)

多重比較法の検討
2024年10月18日 第10回大阪SAS勉強会
田辺三菱製薬株式会社
開発・メディカル本部データサイエンス部統計解析グループ


# Page. 2

![Page Image](https://bcdn.docswell.com/page/LE1K6LGZJG.jpg)

病と向き合うすべての人に、希望ある選択肢を。
免責事項
本発表で述べる意見や見解は，発表者個人のものであり，
所属する組織や企業の公式な立場や意見を代表するものではありません．
2


# Page. 3

![Page Image](https://bcdn.docswell.com/page/GEWDWVK6J2.jpg)

病と向き合うすべての人に、希望ある選択肢を。
目的
⚫ Williamsの方法，Dunnettの方法，固定順序法はどれも薬効薬理試験
にて用いられる検定
⚫ 薬効薬理試験では，低用量・中用量・高用量等複数用量を比較，検定
するため，多重性の問題を考慮し，第一種の過誤確率を5％に保つ必
要がある．
☆ どの手法を用いるべきか，各手法の内容を確認しSASで実行する．
3


# Page. 4

![Page Image](https://bcdn.docswell.com/page/47ZG54ZRE3.jpg)

病と向き合うすべての人に、希望ある選択肢を。
背景知識
検定の多重性問題：検定を繰り返し行うことで，全体としての結論の第１種の過誤確率が大きく
なってしまうこと．
例えば，有意水準5%で独立に5回検定を行うと，少なくとも１回有意となる確率は
1 − 0.955 = 0.0975
このように，有意水準5%で独立にn回検定を行うと，以下の確率で少なくとも有意となってしまう．
1 − 0.95𝑛
１回１回の検定は有意水準5%で行われていても，全体としての有意水準が5%よりずっと大きく
なってしまう．
そこで本発表では，多重性への対処法の１つである多重比較法を用いて，全体としての有意水準を
5%に制御することを考える．
4


# Page. 5

![Page Image](https://bcdn.docswell.com/page/YJ6Y93Z17V.jpg)

病と向き合うすべての人に、希望ある選択肢を。
本発表で扱う多重比較法
本発表では代表的なパラメトリック法であるDunnettの方法とWilliamsの方法について取り扱う．
（パラメトリック法にはTukeyの方法等ほかの方法も存在する）
・Dunnettの方法：
１つの対照群と２つ以上の処理群があって， 母平均について対照群と処理群の対比較のみを同時に
検定するための多重比較法．
・Williamsの方法：
１つの対照群と２つ以上の処理群があって，各群に順序付けがあるものとする．母平均に単調性
（増加・減少）を想定することができるとき，母平均について対照群と処理群の対比較のみを検定
するための多重比較法．
5


# Page. 6

![Page Image](https://bcdn.docswell.com/page/GJ5GNLWLJ4.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Dunnettの方法_手順
事前に帰無仮説，対立仮設，有意水準を設定しておく．
各処理群の母平均が対照群の母平均と比べ，「異なるか」だけでなく，「小さいといえるかどうか（大きいほうに
関心はない）」，「大きいといえるかどうか（小さいほうに関心はない）」の３通りの状況が考えられる．
それぞれの帰無仮説に対する対立仮説として３通り考えられる．
A) 𝜇1 ≠ 𝜇𝑖
B) 𝜇1 &gt; 𝜇𝑖
C) 𝜇1 &lt; 𝜇𝑖
上記を踏まえて手法を確認する．
6


# Page. 7

![Page Image](https://bcdn.docswell.com/page/LE3R2L4D75.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Dunnettの方法_手順
①各群の平均 𝑥ҧ𝑖 および分散 𝑉𝑖 を計算する．
②誤差自由度𝜙𝐸 および誤差分散VEを計算する
𝜙𝐸 = 𝑁 − 𝑎 = 𝑛1 + 𝑛2 + ⋯ + 𝑛𝑎 − 𝑎
σ𝑎𝑖 =1 𝑛𝑖 − 1 𝑉𝑖
𝑉𝐸 =
𝜙𝐸
③すべての 𝑖 = 2, 3, ⋯ 𝑎 に対して統計検定量𝑡1𝑖 を計算する
𝑡1𝑖 =
𝑥ҧ 1 − 𝑥ҧ 𝑖
1
1
𝑉𝐸 𝑛 + 𝑛
1
𝑖
(𝑖 = 2, 3, ⋯ 𝑎 )
7


# Page. 8

![Page Image](https://bcdn.docswell.com/page/8EDYZNQ2EG.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Dunnettの方法_手順
④次式により𝜌 を求める．
𝜌 =
𝑛2
𝑛2 + 𝑛1
⑤ Dunnettの方法のための両側（上側）5%点の表を参考に𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 を求める．
Aの場合： 𝑡1𝑖 ≥ 𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 ならば帰無仮説を棄却し𝜇1 と 𝜇𝑖 には差があると判断する．
𝑡1𝑖 &lt; 𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 ならば帰無仮説を保留する．
Bの場合：𝑡1𝑖 ≥ 𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 ならば帰無仮説を棄却し𝜇1 と 𝜇𝑖 には差があると判断する．
𝑡1𝑖 &lt; 𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 ならば帰無仮説を保留する．
Cの場合：𝑡1𝑖 ≤ −𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 ならば帰無仮説を棄却し𝜇1 と 𝜇𝑖 には差があると判断する．
𝑡1𝑖 &gt; −𝑑 𝛼, 𝜙𝐸 , 𝜌; 𝛼 ならば帰無仮説を保留する．
8


# Page. 9

![Page Image](https://bcdn.docswell.com/page/V7P6D5LLJ8.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Williamsの方法_手順
事前に帰無仮説，対立仮設，有意水準を設定しておく．
Dunnettの方法の設定に加えて，さらにa個の母平均について以下の関係を想定できるものとする．
𝜇1 ≥ 𝜇2 ≥ ⋯ ≥ 𝜇𝑖
𝜇1 ≤ 𝜇2 ≤ ⋯ ≤ 𝜇𝑖
上記を踏まえて手法を確認する．
①データをランダムサンプリングし，それぞれの群ごとの平均 𝑥ҧ𝑖 および分散 𝑉𝑖 を計算する．
②誤差自由度𝜙𝐸 および誤差分散VEを計算する
𝜙𝐸 = 𝑁 − 𝑎 = 𝑛1 + 𝑛2 + ⋯ + 𝑛𝑎 − 𝑎
σ𝑎𝑖 =1 𝑛𝑖 − 1 𝑉𝑖
𝑉𝐸 =
𝜙𝐸
9


# Page. 10

![Page Image](https://bcdn.docswell.com/page/2JV31PQ6EQ.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Williamsの方法_手順
③ 𝑝 = 𝑎 とおく．
④ 𝑇𝑖 (第𝑖群のデータの合計)を用いて，次の統計量（第𝑝群以下の隣接した処理群を含めた
平均値）を計算する．
𝑇2 + 𝑇3 + ⋯ + 𝑇𝑝
𝑦2𝑝 =
𝑛2 + 𝑛3 + ⋯ + 𝑛𝑝
𝑇3 + ⋯ + 𝑇𝑝
𝑦3𝑝 =
𝑛3 + ⋯ + 𝑛𝑝
𝑇𝑝
𝑦𝑝𝑝 =
𝑛𝑝
10


# Page. 11

![Page Image](https://bcdn.docswell.com/page/5EG32PW27L.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Williamsの方法_手順
⑤𝑦2𝑝 , 𝑦3𝑝 , ⋯ , 𝑦𝑝𝑝 の最大値𝑀𝑝 を求める．
𝑀𝑝 = 𝑚𝑎𝑥 𝑦2𝑝 , 𝑦3𝑝 , ⋯ , 𝑦𝑝𝑝
⑥統計検定量𝑡𝑝 を計算する．
𝑡𝑝 =
𝑀𝑝 − 𝑥1ҧ
1
1
𝑉𝐸 𝑛 + 𝑛
𝑝
1
11


# Page. 12

![Page Image](https://bcdn.docswell.com/page/4JQ5P2397P.jpg)

病と向き合うすべての人に、希望ある選択肢を。
Williamsの方法_手順
⑦Williamsの方法のための両側（上側）5%点の表を参考に𝑤 𝑝, 𝜙𝐸 ; 𝛼 を求める．
単調増加の場合，
𝑡𝑝 &lt; 𝑤 𝑝, 𝜙𝐸 ; 𝛼 なら帰無仮説を保留して検定手順を終了する．
𝑡𝑝 ≥ 𝑤 𝑝, 𝜙𝐸 ; 𝛼 となるなら帰無仮説を棄却して「𝜇𝑝 は𝜇1 より大きい」と判断し
次の手順へ進む．
⑧𝑝 = 2なら手順を終了する．𝑝 ≥ 3のときは𝑝の値を１だけ減らしてこれを新たに𝑝として
手順④から繰り返す．
12


# Page. 13

![Page Image](https://bcdn.docswell.com/page/K749YLNRE1.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASでの実行
使用したデータ：統計的多重比較法の基礎より引用[1]
DRUGID
用量
ni
1
0 mg
7
415
380
391
413
372
359
401
2
15 mg
7
387
378
359
391
362
351
348
3
30 mg
7
357
379
401
412
392
356
366
4
60 mg
7
361
351
378
332
318
344
315
5
90 mg
7
299
308
323
351
311
285
297
RESPONCE
13


# Page. 14

![Page Image](https://bcdn.docswell.com/page/LJ1K6L5V7G.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Dunnettの方法
proc format;
value $DRUG &#039;1&#039; = &#039;0mg&#039; &#039;2&#039; = &#039;15mg&#039; &#039;3&#039; = &#039;30mg&#039; &#039;4&#039; =
&#039;60mg&#039; &#039;5&#039;=&#039;90mg&#039;;
run;
proc glm data = Pra_data order=data;
class DRUGID;
model RESPONCE = DRUGID;
lsmeans DRUGID/adjust=dunnett pdiff=control(&#039;0mg&#039;);
format DRUGID $DRUG.;
run;
14


# Page. 15

![Page Image](https://bcdn.docswell.com/page/GJWDWV5372.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SAS結果 Dunnettの方法
●60mg, 90mgで優位差が見られた．
15


# Page. 16

![Page Image](https://bcdn.docswell.com/page/4EZG54NGJ3.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
手順1
SAS など多くの市販されている統計ソフトでは Williams 検定が標準では実施できない．
⇒マクロを作成し対応．（新版 実用SAS 生物統計ハンドブック[2]より）
/*Williams*/
%macro WILP;
proc glm data = &amp;DATA outstat=VAR noprint;
class &amp;GROUP;
model &amp;Y=&amp;GROUP / ss1;
run;
data VAR; set VAR;
keep VAR DF;
VAR=SS/DF;
if _TYPE_=&#039;ERROR&#039; then output;
run;
Proc glmの実行
誤差分散を算出
proc sort data=&amp;DATA; by &amp;GROUP;
run;
16


# Page. 17

![Page Image](https://bcdn.docswell.com/page/Y76Y938QEV.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
手順2
proc summary data=&amp;DATA;
var &amp;Y;
by &amp;GROUP;
output out=OUT mean=MEAN n=N;
run;
応答値について，薬剤の用量
ごとに要約統計量を計算
proc transpose data=OUT out=N prefix=N;
var N;
id &amp;GROUP;
run;
proc transpose data=OUT out=MEAN prefix=M;
var MEAN;
id &amp;GROUP;
run;
17


# Page. 18

![Page Image](https://bcdn.docswell.com/page/G75GNL9274.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
手順3-1
data SUMMARY; merge N MEAN VAR;
run;
data SUMMARY;set SUMMARY;
drop S1-S100 NN1-NN100;
retain SIN 0;
array NN(&amp;G) N1-N&amp;G;
array M(&amp;G) M1-M&amp;G;
array MM(&amp;G) MM1-MM&amp;G;
MM1=M1;
array S(10, 10) S1-S100;
array NNN(10,10) NN1-NN100;
do I=1 to &amp;G-1;
NN:サンプルサイズを格納
M:各グループの平均値を格納
MM:調整平均値を格納
1つ目のグループの平均値をMM1
に格納
グループ間平均の合計が格納され
ているS配列とグループサイズの
合計を格納するNNN配列を定義
do J=1 to &amp;G-1;
s(I, J) =0;
NNN(I, J) =0;
do K=I to J;
S(I, J) =S(I, J) +M(K+1) *NN(K+1) ;
NNN(I, J) =NNN(I, J) +NN(K+1);
end;
if NNN(I, J) ^=0 then S(I, J)=S(I, J) /NNN(I, J);
end;
end;
18


# Page. 19

![Page Image](https://bcdn.docswell.com/page/9J2Y5L21JR.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
手順3-2
data SUMMARY; merge N MEAN VAR;
run;
data SUMMARY;set SUMMARY;
drop S1-S100 NN1-NN100;
retain SIN 0;
array NN(&amp;G) N1-N&amp;G;
array M(&amp;G) M1-M&amp;G;
array MM(&amp;G) MM1-MM&amp;G;
MM1=M1;
array S(10, 10) S1-S100;
array NNN(10,10) NN1-NN100;
組み合わせごとにグループ間の
平均値とサンプルサイズを計算
do I=1 to &amp;G-1;
do J=1 to &amp;G-1;
s(I, J) =0;
NNN(I, J) =0;
do K=I to J;
S(I, J) =S(I, J) +M(K+1) *NN(K+1) ;
NNN(I, J) =NNN(I, J) +NN(K+1);
end;
if NNN(I, J) ^=0 then S(I, J)=S(I, J) /NNN(I, J);
end;
end;
19


# Page. 20

![Page Image](https://bcdn.docswell.com/page/DEYGKQY4EM.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
do J=1 to &amp;G-1;
手順4-1
調整平均値の計算
MM(J+1)に各グループの平均値を格納
TAIL が1の場合,最大値をとり，
TAIL が2の場合，最小値をとる
MM(J+1) =M(J+1);
do I=1 to &amp;G-1;
if NNN(I, J) ^=0 and 1=&amp;TAIL then MM(J+1)=max(MM(J+1),
S(I, J));
if NNN(I, J) ^=0 and 2=&amp;TAIL then MM(J+1)=min(MM(j+1),
S(I, J));
end;
end;
CONTROL:最初のグループ間の
調整平均値
その後，グループの調整平均値
と平均値を格納
do I=&amp;G to 2 by -1;
CONTROL = MM1;
GROUP=I;
ADJMEAN=MM(I);
MEAN=M(I);
T=(MM(i) -MM1) / (VAR*(1/NN(i) + 1/N1))**0.5;
if 2=&amp;TAIL then T=T*(-1);
WP=1-probmc(&#039;williams&#039; , T, ., DF, I-1);
WTC=probmc(&#039;williams&#039;, ., 1-&amp;A, DF, I-1);
STAR=&#039; &#039;;
if WP&lt;=&amp;A then SIN=1;
if SIN=1 then STAR=&#039;*&#039;;
output;
SIN=0;
end;
run;
20


# Page. 21

![Page Image](https://bcdn.docswell.com/page/VJNGRKP678.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
手順4-2
do J=1 to &amp;G-1;
MM(J+1) =M(J+1);
do I=1 to &amp;G-1;
if NNN(I, J) ^=0 and 1=&amp;TAIL then MM(J+1)=max(MM(J+1),
S(I, J));
if NNN(I, J) ^=0 and 2=&amp;TAIL then MM(J+1)=min(MM(j+1),
S(I, J));
end;
end;
T: 𝑡𝑝の計算
WP: Williamsのp値を計算
(前述の手順ではWilliamsの方法のための
両側（上側）5%点の表を参考)
WTC:𝑤(𝑝, 𝜙_𝐸;𝛼)を求める
do I=&amp;G to 2 by -1;
CONTROL = MM1;
GROUP=I;
ADJMEAN=MM(I);
MEAN=M(I);
T=(MM(i) -MM1) / (VAR*(1/NN(i) + 1/N1))**0.5;
if 2=&amp;TAIL then T=T*(-1);
WP=1-probmc(&#039;williams&#039; , T, ., DF, I-1);
WTC=probmc(&#039;williams&#039;, ., 1-&amp;A, DF, I-1);
STAR=&#039; &#039;;
if WP&lt;=&amp;A then SIN=1;
if SIN=1 then STAR=&#039;*&#039;;
output;
SIN=0;
end;
run;
21


# Page. 22

![Page Image](https://bcdn.docswell.com/page/YE9WMV3RE3.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SASによる実行 Williamsの方法
proc sort; by GROUP; run;
proc print;
var CONTROL GROUP MEAN ADJMEAN T WP WTC STAR;
run;
%mend;
%let DATA=Pra_data;
%let G=5;
%let A=0.05;
%let GROUP=DRUGID;
%let Y=RESPONCE;
%let TAIL=2;
%WILP;
22


# Page. 23

![Page Image](https://bcdn.docswell.com/page/GE8NLPMG7D.jpg)

病と向き合うすべての人に、希望ある選択肢を。
SAS結果 Williamsの方法
●順序の逆転が見られた箇所はMEANとADJMEANが異なる．
●90 mg群, 60 mg群で優位差が見られ30 mg群ではT&lt;WTCとなるので帰無仮説
を保留して検定作業を終了する．
23


# Page. 24

![Page Image](https://bcdn.docswell.com/page/LELPL13X7R.jpg)

病と向き合うすべての人に、希望ある選択肢を。
まとめ
⚫ Dunnettの方法とWilliamsの方法はどちらも薬効薬理試験にてよく用いられる．
⚫ 単調性を満たす場合，Williamsのほうが検出力が高いと言われている．
⇒例数設計の際，サンプルサイズを小さく抑えられる可能性がある．
⚫ 各群のサンプル数が異なる場合は対処する必要がある．
（Williamsの方法はすべてのサンプルサイズが等しいことを前提としているが，欠測の
度合いによっては，欠測が発生しても使用可能な事例もある）
☆ 試験の特徴（動物の脱落が起こりやすい等）や手法の特徴を考慮し，適切な手法を
事前に選択することが重要．
24


# Page. 25

![Page Image](https://bcdn.docswell.com/page/4JM4MWD37W.jpg)

病と向き合うすべての人に、希望ある選択肢を。
参考資料
[1] 永田 靖, 吉田 道弘, 統計的多重比較法の基礎, サイエンティスト社（1997）
[2] 浜田 知久馬, 新版 実用SAS 生物統計ハンドブック（2017）
[3] 第二期医薬安全性研究会 20170610第20回定例会公開資料 浜田final
[4]中西 展大，橋本 敏夫，浜田知久馬（2014） ，薬理薬効試験におけるこれからの
標準的検定手法 薬理薬効試験における Williams 多重比較検定の妥当性と有用性
総説 日薬理誌 144，185～191
25


