a brilliant donut

医療を中心とした、話題を。いつか、どこかで、誰かの役にたてば幸いです。

統計解析ソフトEZR 〜ロジスティック回帰分析の実例@mac〜

EZRを使用した統計解析です

 

フリーソフトで精度が高い解析ができるのはすばらしいと思います

 

感謝です

 

誰かのお役に立てれば幸いです

(注)Mac OS high sierra ver10.13.6で行っています)

 

〜要点〜

・ダウンロード〜起動までも一工夫あり

・解析を行う「コマンダー」画面の表示がしばしばネット上で

 みられるのと相違あり?

・解析モデルの選択も不勉強にて、見慣れない言葉が多数

・オッズ比・95%CIの出し方も一工夫あり

 

 

❶EZRをダウンロードすると、

「Finder」→「アプリケーション」に「R」が出現しますので、ダブルクリック

 すると、下のようなコンソール画面が立ち上がります

f:id:abrilliantdonut:20181127095521g:plain

❷ここに「library(Rcmdr)」を入力し、Enterを行いますと

 以下のような画面が出現し、

f:id:abrilliantdonut:20181127095500g:plain

その後、コマンダーが起動

f:id:abrilliantdonut:20181127095446g:plain

*EZRを解説されておられる、多くのHPでは上記と異なった表示のコマンダーであることが多くて、最初はここでつまずきました;;

つづきまして、元ネタであるデータのコピーにとりかかります

 多くがそうだと思いますが、本例でもエクセルでデータ編集をしております

 ので、エクセルデータをコピーします

 「縦に項目をならべて」「空白を残さないように」行っています

(ちなみに今回は

 目的:糖尿病網膜症の眼底検査中断率に対して、網膜症病期の影響を確認

 解析:年齢・性別・HbA1cインスリン使用の有無を含む多変量解析

    それぞれを二分して二値変数(yes-no,0-1)でのロジスティック回帰分析

で行なっています)

f:id:abrilliantdonut:20181127095324g:plain

 コピーしたデータを読み込みます

「データ」「データのインポート」「テキストファイルまたは・・・」

f:id:abrilliantdonut:20181127095851g:plain

 

すると下のような表示が出現しますので、

f:id:abrilliantdonut:20181127095912g:plain

データ名・場所・記号を変更します(今回は中断率withdrawとしました)

f:id:abrilliantdonut:20181127095929g:plain

注)「タブ」を選ばないと、列が正しく認識されないようです

 

OKをおすと、このような表示が出現します

f:id:abrilliantdonut:20181127095953g:plain

*ここで試しに「データセットを表示」をクリックするとこのようになっています

(上に示したエクセルデータとほぼ同じ表がみられます)

f:id:abrilliantdonut:20181127100509g:plain

 

ここで、EZRでは、

 ・数字=連続変数

 ・文字=名義変数(因子)

 として扱うようなので、上記0,1を名義変数と認識されるように入力します

(すなわち、今回のデータの0-1は二値のYes/No(例)中断あり・中断なし)の意味合いであり、数字の0,1の意味合いではないからです)

 

 「データ」「アクティブデータセット内の」「連続変数を因子に変換」とすると

f:id:abrilliantdonut:20181127100527g:plain

 

このような画面がでてきます

f:id:abrilliantdonut:20181127100544g:plain

 

今回はすべて名義変数として指定したいので、

「変数で全てを選択」し

「因子水準は数値で」とします

f:id:abrilliantdonut:20181127100556g:plain

 

ここで、上書きしますかをYESとすると・・・

f:id:abrilliantdonut:20181127100606g:plain 

注)これは上記、因子に変換において、「新しい変数名または・・・」 のところが、〈変数名と同じ〉になっているからで、別にすれば、上書きにはならないのだと思われます。

 

このように出力部分に「因子(Factors)」として出力されます

f:id:abrilliantdonut:20181127100626g:plain

 

いよいよ、解析となりますが、ここで「アウトカムが」

 連続変数線形回帰

 二値変数一般化線型モデル

 三値以上の変数(青・赤・黄など)多項ロジットモデル

 三値以上の順序変数(軽症・中等症・重症など)順序回帰

 を選択し、ロジスティック回帰分析を行うようです。

(統計初心者としてはここも見慣れない表現のため、戸惑いました;;)

 

 今回は二値変数のため、一般化線型モデルを選択しますので、

 「統計量」「モデルへの変換」「一般化線型モデル」

 を選択します

f:id:abrilliantdonut:20181127101018g:plain

 

すると、一般化線型モデルの画面が出現します

 f:id:abrilliantdonut:20181127101033g:plain

 

ここで、

 リンク関数族=binomial

 リンク関数=logit

(これがロジスティック回帰分析を行う際の選択らしいです)

とし、

スプライン/多項式の下の部分に

左の空白=目的変数であり、左の空白を選択し、(今回はwithdraw)をダブルクリック

右の空白=それ以外の独立変数であり、右の空白を選択し、全てをダブルクリック

すると、空白に変数が記載されます

 f:id:abrilliantdonut:20181127101052g:plain

 

OKをすれば、このように解析結果が出力されます

 f:id:abrilliantdonut:20181127101107g:plain

 

解析結果をさらに述べてみます

p値)

一番右側がp値であり、その値が各々の有意水準を超えている場合に*が記されます

f:id:abrilliantdonut:20181127101347g:plain

 

OR)さらに、その下に以下のようにオッズ比が表示されます(上のRコマンダー出力画面を下に進むと表示されています)

f:id:abrilliantdonut:20181127101401g:plain

 

*ちなみに、表示されない場合は、上記のEstimatelog値のORであるため、

 「スクリプトexp(    )を入力し、反転指定した上で、実行する」

 とORが下のように出力されます

f:id:abrilliantdonut:20181127101415g:plain

 

95%CI)これは、式を入力する必要があり、

スクリプトexpestimateの値± 1.96*Std.Error)を入力、反転指定した上で実行」を行うと、下のように出力されます

(*は乗法です。これはあまり記載がみあたらず、新谷歩先生のyou tube動画を拝見し、確認できました;;ありがとうございました)

f:id:abrilliantdonut:20181127101441g:plain

  

以上、EZRを用いた「アウトカムが二値変数の場合の一般化線型モデルでの多変量ロジスティック回帰分析」の実例でした。

 

(ちなみに、本例では

 ・眼底検査受診率の中断に関して、網膜症病期の関連を調べたところ、

 ・病期が軽い(網膜症がない)と中断率が多く認められた(統計学的有意性あり)

 ・年齢・性別・HbA1cインスリン使用の有無を含めて二値変数として、多ロジスティック回帰分析を行なったところ、それらで補正後も統計学的有意性は認められた

 ・ちなみに、インスリン使用の有無も統計学的優位性を認めた(インスリン不使用者では中断率が多い)

 との統計学的結論をもちました)

 

文字ばかりですみません

 

上記は、以下を主に参考にさせていただきました

https://www.youtube.com/watch?v=8oTxIipx_u4

https://haru-reha.com/ezr-logistic-regression-analysis/