No.21087 Rのmultcompライブラリを用いてウィリアムズの多重比較を実施するには  【アスカ】 2014/06/08(Sun) 21:32

お世話になっております。
ウィリアムズの方法による多重比較について,質問があり,書き込ませていただきました。
青木先生のHPにて,ダネットでは multcomp ライブラリの glht を使う方法が紹介されておりますが,ウィリアムズでは紹介されていない為,その意図をお伺いしてもよろしいでしょうか?
(実際,下記のプログラムで検証したところ,multcomp ライブラリの glht を使う方法でt値が正しく出力されませんでした。)

また,Rプログラムを用いて,ウィリアムズの方法でP値を計算する方法をご存知であれば,ご教授願いたいと思います。
宜しくお願い致します。

#ウィリアムズ(青木先生HP)
source("http://aoki2.si.gunma-u.ac.jp/R/src/Williams.R", encoding="euc-jp")
data <- c(
415, 380, 391, 413, 372, 359, 401, # 第 1 群(対照群)のデータ,7 例
387, 378, 359, 391, 362, 351, 348, # 第 2 群(処理群)のデータ,7 例
357, 379, 401, 412, 392, 356, 366, # 第 3 群(処理群)のデータ,7 例
361, 351, 378, 332, 318, 344, 315, # 第 4 群(処理群)のデータ,7 例
299, 308, 323, 351, 311, 285, 297 # 第 5 群(処理群)のデータ,7 例
)
group <- rep(0:4, each=7)
Williams(data, group, method="down")

## <結果>
## $t
## 5 4 3 2
## 7.076038 4.217674 1.416478 1.969095

#ウィリアムズ(multcompライブラリ)
library(multcomp)
bpdown <- data.frame(
group=factor(c(rep(0,7),rep(1,7),rep(2,7),rep(3,7),rep(4,7))),
data <- c(
415, 380, 391, 413, 372, 359, 401, # 第 1 群(対照群)のデータ,7 例
387, 378, 359, 391, 362, 351, 348, # 第 2 群(処理群)のデータ,7 例
357, 379, 401, 412, 392, 356, 366, # 第 3 群(処理群)のデータ,7 例
361, 351, 378, 332, 318, 344, 315, # 第 4 群(処理群)のデータ,7 例
299, 308, 323, 351, 311, 285, 297 # 第 5 群(処理群)のデータ,7 例
)
)
bpdown$group <- factor(bpdown$group, levels=c("0","1","2","3","4")) #薬剤の順番を指定
result <- aov(data ~ group, data=bpdown)
result2 <- glht(result, linfct=mcp(group="Williams"), alternative="less")
summary(result2)

## <結果>
## Linear Hypotheses:
## Estimate Std. Error t value Pr(<t)
## C 1 >= 0 -79.571 11.245 -7.076 <1e-04 ***
## C 2 >= 0 -63.500 9.739 -6.520 <1e-04 ***
## C 3 >= 0 -45.571 9.182 -4.963 <1e-04 ***
## C 4 >= 0 -39.714 8.890 -4.467 <1e-04 ***

No.21089 Re: Rのmultcompライブラリを用いてウィリアムズの多重比較を実施するには  【青木繁伸】 2014/06/09(Mon) 09:37

> 青木先生のHPにて,ダネットでは multcomp ライブラリの glht を使う方法が紹介されておりますが,ウィリアムズでは紹介されていない為,その意図をお伺いしてもよろしいでしょうか?

そのページを書いたときに,R になかったのか,私があるのを知らなかったのか,知っていたけど書く気にならなかったのか,わかりませんね。

> Rプログラムを用いて,ウィリアムズの方法でP値を計算する方法をご存知であれば,ご教授願いたいと思います。

分かりません。

No.21090 Re: Rのmultcompライブラリを用いてウィリアムズの多重比較を実施するには  【アスカ】 2014/06/09(Mon) 23:53

ご回答くださり,ありがとうございます。

青木先生がウィリアムズのページをお書きになってから,10年が経っていますので,その頃とは状況も変わってしまっていますね。
しかし,気になっていたので,お聞きできて良かったです。
返信くださり,ありがとうございました。

● 「統計学関連なんでもあり」の過去ログ--- 046 の目次へジャンプ
● 「統計学関連なんでもあり」の目次へジャンプ
● 直前のページへ戻る