No.13789 2つの回帰直線の傾きの検討について  【OGU】 2010/11/19(Fri) 01:32

初めまして。臨床の合間に研究を行っている勤務医です。
現在,糖尿病血液透析患者さんの血糖値の変動を調べる際に,HbA1c(ヘモグロビンエーワンシー)という項目を調べるのと,GA(グリコアルブミン)という項目を調べるのとでどちらが有用であるかを検討しております。
過 去の論文より,血液透析を行っていない糖尿病の患者さんにおける血糖値の変動とHbA1c,GAの回帰式が存在するため,それらの回帰式と我々が調べてい る血液透析を行っている患者さんのHbA1c,GAの回帰式をそれぞれ比較しようと(共分散分析)思いましたが,HbA1c,GAともに回帰直線がクロス してしまい(見た目に)平行性がないように思えました。
ここで様々な文献,教科書を調べたのですが,共分散分析をする際に平行性があるかどうかの 検討をしなければならない,ということがよくわかりません。回帰直線がクロスしてしまう時点で平行性がないことになってしまい共分散分析は使えないので しょうか?また,平行性がない(クロスしてしまう)2つの直線の傾きに有意な差があるかどうかの検討方法はあるのでしょうか。
まったく素人な御質問でお恥ずかしい限りですが,何卒御教授頂きたくよろしくお願い申し上げます。

No.13790 Re: 2つの回帰直線の傾きの検討について  【波音】 2010/11/19(Fri) 08:20

たしかにいくつかの本には

> 共分散分析をする際に平行性があるかどうかの検討をしなければならない

という説明がありますが,著者がどういう意図でそういうことを書いているのか分かりません。

要は共分散分析において,連続型変数とカテゴリカル型変数との交互作用項が有意ならば「傾きは異なる」ということになりますし,有意でなければ「傾きは同じ」ということになります。交互作用モデルが適切か,それとも加法モデルが適切かというだけの話ですね。

したがって

> 回帰直線がクロスしてしまう時点で平行性がないことになってしまい共分散分析は使えないのでしょうか?

というのは,そんなことないです。

> 平行性がない(クロスしてしまう)2つの直線の傾きに有意な差があるかどうかの検討方法はあるのでしょうか。

前述したとおり,交互作用項が有意であるかどうかをみればよいだけです。本によっては「2本の回帰直線の傾きの差の検定」と称しているものもありますが,本質的には全く同じものです。

No.13791 Re: 2つの回帰直線の傾きの検討について  【青木繁伸】 2010/11/19(Fri) 09:19

今日は時間がないので,取りあえず。

共分散分析は,従来多くの教科書などで,「1 個の共変量で調整した各群の平均値に差があるかどうか検定する」ものである,と定義されていた。
http://aoki2.si.gunma-u.ac.jp/LaTeX/cov/cov.pdf
そ の検定は2段階に分かれ,「共分散分析を行う前提としては,各群において直線回帰式の傾きが同じでなければならないので,ま ず回帰の同質性について検定しなければならない。もしこの検定で回帰が同質とみなせるという結論が 得られれば,共分散分析が行われる。」と言うことです。したがって,「2つの直線の傾きに有意な差があるかどうか」は第一段階を挿すものでしょう。 「交互作用項が有意であるかどうかをみればよいだけです」と,共分散分析の対応付けは後刻。

No.13793 Re: 2つの回帰直線の傾きの検討について  【OGU】 2010/11/19(Fri) 15:17

早々の御返信,御教授有難うございます。
先生方の仰る通り,共分散分析はいくつかの段階を踏んで検討して いくものだということはいうことは何となく理解できました。しかし,統計ソフト(JMP)に個々のデータを入力すると,ソフトが解析を行ってくれるため回 帰が同質だとみなせる結論が得られて次に進めたのか,否かが分かりません。
まずはJMPを使用して,先に回帰の同質性を得るような解析を行わないとならないのでしょうか?
>要は共分散分析において,連続型変数とカテゴリカル型変数との交互作用項が有意ならば「傾きは異なる」ということになりますし,有意でなければ「傾きは同じ」ということになります。交互作用モデルが適切か,それとも加法モデルが適切かというだけの話ですね。
ちなみに交互作用項は有意ではありません(p=0.0513)でした。

御教授よろしくお願いします。

No.13800 Re: 2つの回帰直線の傾きの検討について  【青木繁伸】 2010/11/19(Fri) 20:02

ひいひい,ぜいぜい 帰ってきました。

さて,波音さんが書いてくれた No. 13748 の例をとりあげて考察してみましょう。

波音さんの挙げてくれた例の解析結果
> Y <- c(1,3,6,8,10,15, 2,5,7,11,18)
> X <- c(2,3,4,5,8,20, 3,4,6,9,24)
> GROUP <- rep(c(1,2), c(6,5))
> GROUP <- factor(GROUP, levels=c(1,2), labels=c("groupA", "groupB"))
> result <- lm(Y ~ X * GROUP)
> summary(result)

Call:
lm(formula = Y ~ X * GROUP)

Residuals:
Min 1Q Median 3Q Max
-2.72917 -1.26042 -0.01221 1.52083 2.53799

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 2.354167 1.364605 1.725 0.12815
X 0.687500 0.146865 4.681 0.00226 **
GROUPgroupB -0.101792 2.053199 -0.050 0.96184
X:GROUPgroupB 0.002459 0.194829 0.013 0.99028
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.198 on 7 degrees of freedom
Multiple R-squared: 0.8816, Adjusted R-squared: 0.8309
F-statistic: 17.37 on 3 and 7 DF, p-value: 0.001267
波 音さんは,この結果を「今回のデータセットだとGROUPは応答変数を説明するために重要でない変数であることがわかり,適切なモデルは回帰モデルという ことになります」と書いてくれています。X:GROUPgroupB の行の,Pr(>|t|) 列,つまり,0.99028 をみて結論づけています。(ですよね?)

さて,「古典的な」共分散分析を行う http://aoki2.si.gunma-u.ac.jp/R/covar-test.html にある R プログラム covar.test 関数を使うと,
> dat <- data.frame(X, Y, GROUP)
> covar.test(dat, 1, 2, 3)
$part1
[1] "H0: 各群の回帰直線の傾きは同じである"

$result1.1
SS d.f. MS
group x slope 7.698331e-04 1 0.0007698331
residual 3.382061e+01 7 4.8315161207
total 3.382138e+01 8 4.2276728347

$result1.2
F value d.f.1 d.f.2 P value
0.0001593357 1.0000000000 7.0000000000 0.9902809352

$part2
[1] "H0: 共変量で調整した平均値は同じである"

$result2.1
SS d.f. MS
effect & group 0.01798848 1 0.01798848
residual 33.82138268 8 4.22767283
total 33.83937116 9 3.75993013

$result2.2
F value d.f.1 d.f.2 P value
0.004254936 1.000000000 8.000000000 0.949591559
検定は,二段階で行われますが,まず第一段階の「H0: 各群の回帰直線の傾きは同じである」の検定結果が,
     F value        d.f.1        d.f.2      P value 
0.0001593357 1.0000000000 7.0000000000 0.9902809352
ということになっており(P 値 = 0.9902809352),波音さんの解析例の P 値と同じになっていることがわかりますね。
まあ,それだけのことですが。

な お,共変量がカテゴリー変数であるか連続変数であるかの違いは,カテゴリー変数が3つ以上のカテゴリーを持つようになると,結果は異なってきます。つま り,カテゴリー変数の場合には独立変数との交互作用項が「カテゴリー数-1」個出てくるのですけど,共変量が連続変数のときにはいつも1個だけですから。
波音さんのデータを無理矢理3カテゴリーを持つデータにしてやってみると結果は違ってきます(カテゴリー変数を連続変数だと間違って見なしているのだから当たり前。そんなことはしてはいけないということ)
又,カテゴリー変数だとして扱っても,いくつかの交互作用項が有意で,残りは有意でないなどという結果になったとき,「じゃあ,結局の所,全体として交互作用は有意なのかどうなのか?」と問われると,ちょっと困る??
> Y <- c(1,3,6,8,10,15, 2,5,7,11,18)
> X <- c(2,3,4,5,8,20, 3,4,6,9,24)
> GROUP <- rep(c(1,2,3), c(3,3,5))
> GROUP <- factor(GROUP, levels=c(1,2,3), labels=c("groupA", "groupB", "groupC"))
> result <- lm(Y ~ X * GROUP)
> summary(result)

Call:
lm(formula = Y ~ X * GROUP)

Residuals:
1 2 3 4 5 6 7 8 9 10 11
0.16667 -0.33333 0.16667 -0.28571 0.35714 -0.07143 -2.32225 -0.01221 0.60787 2.53799 -0.81140

Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) -4.167 3.578 -1.165 0.2967
X 2.500 1.151 2.172 0.0819 .
GROUPgroupB 10.190 4.028 2.530 0.0526 .
GROUPgroupC 6.419 3.754 1.710 0.1480
X:GROUPgroupB -2.048 1.160 -1.765 0.1378 ★★交互作用項が2つあることに注意★★
X:GROUPgroupC -1.810 1.155 -1.568 0.1778
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.627 on 5 degrees of freedom
Multiple R-squared: 0.9536, Adjusted R-squared: 0.9073
F-statistic: 20.57 on 5 and 5 DF, p-value: 0.002391

> #今回のデータセットだとGROUPは応答変数を説明するために重要でない変数であることがわかり,適切なモデルは回帰モデルということになります
> # http://aoki2.si.gunma-u.ac.jp/R/covar-test.html
> dat <- data.frame(X, Y, GROUP)
> covar.test(dat, 1, 2, 3)     # このように分析するのは★★誤り★★
$part1
[1] "H0: 各群の回帰直線の傾きは同じである"

$result1.1
SS d.f. MS
group x slope 12.02656 2 6.013278
residual 13.24323 5 2.648646
total 25.26979 7 3.609970

$result1.2
F value d.f.1 d.f.2 P value
2.2703213 2.0000000 5.0000000 0.1988296

$part2
[1] "H0: 共変量で調整した平均値は同じである"

$result2.1
SS d.f. MS
effect & group 8.569582 2 4.284791
residual 25.269789 7 3.609970
total 33.839371 9 3.759930

$result2.2
F value d.f.1 d.f.2 P value
1.1869327 2.0000000 7.0000000 0.3598551

No.13819 Re: 2つの回帰直線の傾きの検討について  【波音】 2010/11/20(Sat) 20:56

青木先生のコメントありがとうございます(なぜそれほどにお疲れになっているのか気になるところではありますが ^_^; それはさておき)。

た しかに群間差に関心があるときに,共変量として連続変数をモデルに組み込む場合は傾きが同じでないと都合が悪いですね。順番的にはちぐはぐなのかもしれま せんが,私が共分散分析をきちんと勉強した本が一般線形モデルの本でしたので,そういう着眼点のもとで共分散分析が行われるということは気にも留めていま せんでした。。。(汗)

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