患者背景のそろっていない患者データを後方視的に調べ、疾患Aを発症するリスク因子を医学雑誌に論文投稿したいと考えています。
質問は以下の二つです。
Q1:疾患Aのリスク因子を調べるための統計手法はロジスティック回帰分析で良いのでしょうか?他に適した統計手法があるのでしょうか?もしあるのであればその統計手法とロジスティック回帰分析の使い分けはどうすれば良いのでしょうか?
Q2:ロジスティック回帰分析を用いる場合説明変数をどのように選べば良いのでしょうか?
自分の理解ではロジスティック回帰分析を使う目的は以下の二つがあると考えています。
目的①疾患Aの発症率を予測する
目的②疾患Aの発症におけるリスク因子の同定とその寄与度を調べる(質問者のやりたいことです)。
ロジスティック回帰分析を目的①で使用する場合は決定係数R2が最も高くなるように、かつ統計的に有意ではない(関係のない)説明変数は含まないように説明変数を選択すれば良いと思います。
では目的②で使用する場合はどのように説明変数を選択すれば良いでしょうか?
目的①の場合は余計な説明変数は省いた方が良いと思いますが、目的②の場合、論文の読者(およびreviewer)からすれば患者の年齢や体重、性別などできるだけ多くの因子(説明変数)が疾患Aの発症に関与しているかどうか知りたいわけで、発症に関与しないという結果を知ることも重要です。発症に関与しなかったそれら説明変数を除外して発症に関与していた説明変数のみを使って数式を作ってしまうと、それら発症に関与していなかった因子を実際に調べたかどうかも分からなくなってしまうと思います。
目的②で使用する場合は決定係数R2の高さが最も高くならなくても、発症に関与しなかった説明変数も含めて数式を作成し各説明変数の発症に対する統計的有意差の有無と寄与度を示せば良いのでしょうか?
No.4ベストアンサー
- 回答日時:
#1です。
ソフトの件、私も普段使いはRです。
Rであれば、古典的な回帰(一般化線形モデル)は簡単で、
result <- glm(・・・・
step(result)
でAIC選択ができたはずです。
しかし、ベイズ回帰やベイジアン分散分析は内部でMCMCというモンテカルロ・シミュレーションを回すので、Rに加えてStanとかJAGSといったMCMCソフトをくっつけて解析しなければならず面倒です。やはりJASPなどの専用ソフトを使った方が楽です。JASPはユーザーフレンドリーで私はすぐ使うことができました。ただし、分析結果の表がテフで出てくるので、パワポにダイレクトに貼れないのが難点です。
サンプルデータのクリーニングですが、強いバイアスがあるときなどは、ブートストラップ・リサンプリングなどをやりますが、ベイズはそもそもデータ・ドリブンなのでサンプルの影響を強く受けます。つまりここに恣意性が入るのです。②で査読を通すにはその経緯をしっかりアペンディックスなどに残すことが肝要だと思います。
①は自分の研究仮説であれば良いですが、①がダメだったので②という文脈では、査読で突っ込まれます。
あと、ハーフ・ノーマル・プロットは可視化の手法です。研究仮説の裏付けにはなりません。これだけの因子を調べたけど、あとはゴミだったということを示したいとの事でしたので提案しました。ちなみにRでは、
library(FrF2)
x <- read.csv("****.csv")
result1 <- lm (y ~ A + B + D + A:B + A:D + B:D,data = x)
result2 <- aov(y ~ A + B + D + A:B + A:D + B:D,data = x) # どちらでもよい
DanielPlot(result1, half = T, autolab = F)
# Lenthの方法で推定したσを傾きとする(JMPに倣う)
Lenth.PSE <- function(result){
effect <- DanielPlot(result, half = T, autolab = F)$x
S <- 1.5 * median(effect)
effect.n <- effect[effect < 2.5 * S]
PSE <- 1.5 * median(effect.n)
return(PSE)
}
abline(a = 0, b = 1 / Lenth.PSE(result1), col = 4)
で描くことができます。
オールマイティに使えるのは分散分析です。直線的でも曲がっていても使えます。もともと強い曲がりがあるのであれば、傾きを論じることなんて無意味ですからね。ベイジアン分散分析で良いと思います。ただし、因子はカテゴリカル(=水準=level)という点に注意して下さい。年齢など31歳、33歳とかは30代というカテゴリにする必要があります。
Rでいうと、説明変数はfactorです。
result <- lm(y ~ as.factor(x) + ・・・
という感じです。JASPの入力はあらかじめ整理しておく必要があります。詳しくはJASPのチュートリアルで。
JASPのベイジアン分散分析結果の例を添付しておきます。P(M-data)の列名は文字化けしています。
色々と詳細にご教示いただきありがとうございます。
では、JASPを使ってベイジアン分散分析を行なってみます。
また、やってみて分からないことがあれば、新規で質問させていただきます。
No.3
- 回答日時:
#1です。
たびたびスミマセン。ついでに、
ベイズ回帰ですが、結果として出てくるのは、普通の回帰分析と変わないy=A+B+Cというモデル式です。そして目的変数が発症の有無でしたら二項ですので、ロジスティック・モデルになります。つまり見た目の結果は同じです。
ただし、何が違うかと言うと
・普通の回帰は、説明変数Aを取り込むか取り込まないか逐次的にP値で調べていくのに対し、(FinFout法、増減法等々)
・ベイズ回帰は、y=A,y=B,y=A+Bというように考えられるモデルを全て列挙してモデル同士を同時比較します。このとき、観測データに準じるとどのモデルが一番成立しやすいかという判定を事前オッズと事後オッズのオッズ比(ベイズ・ファクター)を使って行います。ベイズ回帰は変数選択法によってモデルが変わる=恣意性がある、ということはありません。
この枠組みは、ベイジアン分散分析でも同じです。
近い将来、日本もベイズ手法が主流になると思われ、あちこちの大学でチュートリアルが開催されています(今はコロナで休止しているようです)。でも学会の重鎮には頑固な人が多いですから、アメリカのようにすんなりいくかどうか疑問です。まあ、自分の弟子の論文が受理すらされないとなると焦り出すかもしれません。
No.2
- 回答日時:
#1です。
真摯な返答、ありがとうございます。お借りになった本が「豊田ベイズ本」であれば、すぐさま中断してください。豊田先生のベイズ本は誤りだらけです。私のような実務家でも分かる誤りが多数あります。詳細は5チャンネルをご覧ください。
ベイズ回帰やベイジアン分散分析の手引書は、和書は1つしか出ていません。
清水ら(2020);『JASPによるデータ分析』,コロナ社
あとは、JASPの開発陣がスピンアウトして作ったJAMOVIの解説書の訳が、現在無料で読めます。クロームで開けば印刷もできます。
Danielle J Navarro & Dvid R Foxcroft(著),芝田征司(訳)(2018):『jamoviで学ぶ心理統計』,第15章
https://bookdown.org/sbtseiji/lswjamoviJ/ch-baye … (無料ダウンロード可)
洋書ならJASP関連本がAmazonで多数見つかります。
これらを読めば、おおかたの解析手順が分かると思いますが、なにか事例があれば、ここで披露することも可能です。
・サンプリング・バイアスの件、有名な事例はシンプソンのパラドックスです。ネットですぐ出てきます。これは、男性の多くは旧療法、女性の多くは新療法を採用しているという偏りを持っています。
・傾向スコア分析ですが、サンプル数1200もあれば十分です。
・分散分析は、横軸の因子Aを振った時に、縦軸の結果がどれだけ変動するかを、偶然変動と比較しています。これより、10代は発症せず、30代は症状が重篤になるが、5~60代は比較的軽いといった上下動があってもOKです。
・回帰分析は、モデルにフィットさせますので、30度を超えるとガクッを熱中症患者が増えるような直線に乗らないケースは逆に有意になりません。ただしメリットは、横軸が1単位増えると、患者数は倍増するといった弾力性指数が計算できます。
私は工業の世界なので、加工条件が小さくてもダメ、大きくてもダメ、中庸が一番良いケースをか使いますので、殆ど分散分析です。
これまでRで統計解析を行っていたので、Rで解析を行おうと考えていました。JASPは使ったことがないため敷居が高いと考えていましたが、調べてみるとこのJASPはRをベースに作られているのですね。であれば教えていただいた書籍を借りてトライしてみます。
今日借りてきた本は「ビジネスマンがはじめて学ぶベイズ統計学」という本でRを使ってベイズ統計と解説してある本です。他にも何冊かベイズ統計の入門書的なものを借りてきましたが、(幸いにも?)豊田先生の書籍は含まれていませんでした。
>サンプリング・バイアスの件、有名な事例はシンプソンのパラドックスです。ネットですぐ出てきます。これは、男性の多くは旧療法、女性の多くは新療法を採用しているという偏りを持っています。
Q3:現在着目している因子はその有無によって患者の平均年齢など様々な因子が統計的に有意に異なっています。疾患Aの発症には加齢が一番のリスクファクターであることが知られています。この場合、①ある範囲の年齢に絞って解析を行う②観察したデータから2つの群(着目している因子の有無)の年齢が均等になるようにデータ(患者)を抽出し比較することは統計学的には行って良いことなのでしょうか?直感的には年齢は均等にはできるが、その他の因子を均等に2群に割り振ることができないためダメな気がしますが。
結局はこういったことをやるよりはベイズ回帰か分散を行った方が良いということでしょうか?
また、疾患の発症率を予測したいわけではないため、ベイズ回帰や分散よりも着目した因子が発症に関与しているかどうかを知りたいだけであればハーフ・ノーマル・プロットで十分でしょうか?
Q4:現在着目している疾患Aはある年齢を超えると急激に発症率が高まります。y=x2のグラフを変形させたような感じです。年齢だけに着目するとり分散分析の方が良いように思いますが、それ以外の因子、特に自分の着目している因子と疾患の発症率との相関が直線的であった場合は回帰と分散のどちらが良いのでしょうか?分散分析の方がどちらかというとオールマイティに使える感じでしょうか?
No.1
- 回答日時:
企業で統計を推進する立場の者です。
博士(工学)です。A1:ロジスティック回帰を行って偏回帰係数のexp値を取れば「調整オッズ」になるので、かつてはケースコントロール研究にはロジスティック回帰を使えば良いと言われていましたが、今日、回帰はあくまで予測の手段であって因果分析には使えないというのが常識です。このケースでは「傾向スコア分析」を使うべきと思います。ただしサンプリングバイアスのない大量のデータが必要となります。
予測に用いる場合であればロジスティック回帰で良く、モデル選択は自由度調整済み寄与率(寄与率=重決定係数)を使うかAIC選択をやれば良いと思います。しかし最近の傾向はベイズ回帰です。使用できるソフトは限られます。フリーソフトのJASPであればできると思いますが、JASPの結果で査読が通るかどうかは知りません。
A2:ロジスティック回帰を使うにしても、P値(統計的有意性)を見ながら説明変数を決めるという手法は、米国の統計や医療系のジャーナルでは査読は通りません。対応として用いられるのはベイズ回帰かあるいはベイジアン分散分析かと思います。これらは因子毎のP値を求めるのではなく、モデル比較を行います。そしてベイズファクターでどのモデルが良いかを判断するという方法になります。しかし日本ではまだなじみがないので、査読者がついてこれるか心配です。
ご質問に関連して色々書かれている点に関しては、
それぞれの因子が効いているか効いていないかを示すには「ハーフ・ノーマル・プロット」を使えば良いと思います。
そもそも説明変数間が直交していませんのでモデルによって係数が変わります。全ての項を取り込んだ式と最適な式では係数が違うのです。全ての項を取り込んだ式を示すのは、過学習でありミスリードを招きます。薬の副作用の予測でそれをやって京都大学がHPから記事を削除する事件がありました。ご注意ください。
回答いただきありがとうございます。
何点か質問させてください。
>このケースでは「傾向スコア分析」を使うべきと思います。ただしサンプリングバイアスのない大量のデータが必要となります。
Q1a: 「サンプリングバイアスがない」とは私の例で言うと具体的にはどういったことでしょうか?また、「大量の」データもいくらくらいのN数が必要でしょうか?今解析しているのは症例数がおよそ1200ですが、まだ足りないでしょうか?
>ロジスティック回帰を使うにしても、P値(統計的有意性)を見ながら説明変数を決めるという手法は、米国の統計や医療系のジャーナルでは査読は通りません。
自分と同分野の研究内容がよく似た論文を読んでみるとロジスティック回帰分析が多用されていて、自分も見様見真似でやってみたのですが、どの説明変数を使うかによって結果が変わり、解析者が恣意的に結論を操作できてしまうと感じて本当にロジスティック回帰で良いのか疑問に感じて今回の質問をした次第です。説明変数の選び方に統計学的に決まったルールがあるのかと思ったのですが、やはり今回の研究にはロジスティック回帰を用いること自体が不適切ということで納得しました。
>対応として用いられるのはベイズ回帰かあるいはベイジアン分散分析かと思います。
Q2a:今日、図書館でベイズ統計に関する本を借りてきてこれから読んでみるところですが、ベイズ回帰とベイジアン分散分析はどう使い分ければ良いのでしょうか?今回の私の研究に適した手法はどちらでしょうか?何か判断する基準のようなものがあるのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 統計学 マルチレベル分析について 2 2023/02/21 09:36
- 統計学 加重最小二乗法=①「変数を自然対数変換」=②「誤差項の分散の逆数を重み付け」? 8 2022/11/26 11:15
- 数学 モデルのパラメータの定義がいまいちわかりません。 3 2022/10/11 15:16
- 物理学 微分方程式の物理現象への適用について 3 2023/05/14 12:22
- その他(ニュース・時事問題) コロナ感染者「全数把握」の廃止? 6 2022/08/17 22:22
- 統計学 アンケート調査のデータ比較をする際の統計分析方法の選択に迷っています 5 2022/04/15 01:05
- 統計学 ダミー変数の因子分析について質問です 1 2022/03/27 14:31
- 哲学 説得力を修辞の巧みさまたは論理の強さの2つに分析するにはどうすると良いでしょうか? 0 2022/07/20 05:46
- 会社・職場 適職相談にのっていただけませんか? 6 2022/08/27 02:53
- 大学・短大 大学 統計学 2 2022/09/18 15:06
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELにてローパスフィルタを作...
-
サンプル数の異なる2群間にお...
-
心理機能診断をしたのですが、...
-
パイロットサンプルって何ですか?
-
エクセルのグラフから半値幅を...
-
回帰分析検証不一致
-
ヒストグラムの分布形状が二山...
-
統計学のサンプル数2000の根拠は?
-
検量線の決定係数について
-
統計学についてです。 抽象的で...
-
両側検定と片側検定のp値の違い
-
確率統計でExcelの使い方を教え...
-
最小二乗法を反比例の式を元に...
-
統計について
-
回帰分析の回帰係数のt検定
-
対数目盛の読み方を教えてください
-
信号処理 (移動平均)
-
エクセルの統計でχ二乗検定の結...
-
2郡の共通の標準偏差とは
-
心理学の統計について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
サンプル数の異なる2群間にお...
-
EXCELにてローパスフィルタを作...
-
統計学の問題でわからないので...
-
心理機能診断をしたのですが、...
-
検量線の決定係数について
-
検定統計量の値がマイナス
-
極値をもつ時と持たない時、単...
-
ポアソン回帰でのカウントデー...
-
t検定の結果の書き方
-
エクセルのグラフから半値幅を...
-
変化率のみで、有意差の検定は...
-
【統計】有意に「高い」?「低...
-
エクセルの統計でχ二乗検定の結...
-
統計について
-
少ない母数に対するアンケート...
-
統計学のサンプル数2000の根拠は?
-
理科のグラフで、直線と曲線の...
-
エクセルで正規分布かどうかを...
-
データが正規分布しているか判...
-
アンケートの集計分析の基礎(...
おすすめ情報