統計ER

統計ソフトRの使い方を中心に、統計解析方法の解説をするブログ。ありそうでなかなか見つからないサンプルサイズ計算などニッチな方法について紹介しています。

EZRのフィッシャー正確検定でオッズ比の信頼区間のパーセントを変えるには?

Toukei Consul Banner

KH Coder Consul Banner

統計ソフトEZRは、無料で使えて、しかもメニューから選んで分析できる、簡単便利な統計ソフト。

フィッシャーの正確検定でオッズ比の信頼区間のパーセントを変えることはできるか?

EZRでフィッシャーの正確検定を行うには?

EZRでフィッシャーの正確検定(Fisher’s Exact Test)を行うには、使用するデータを読み込んでから「統計解析」から「名義変数の解析」の中の「分割表の作成と群間の比率の比較(Fisherの正確検定)」を選択する。

f:id:toukeier:20210815105044p:plain
Fisherの正確検定

今回使用しているのは、survival パッケージの flchain データセット。性別(sex)と疾病診断(mgus)の関連性を検討してみる。

f:id:toukeier:20210815105654p:plain
行と列に配置する変数を選択する

OKをクリックすると結果が表示される。一番下に出てきている結果より少し上に、Fisher Exact Testの結果本体が表示されている。ハイライトしたところがオッズ比の95%信頼区間である。

f:id:toukeier:20210815105916p:plain
Fisherの正確検定の結果。ハイライト部分がオッズ比の95%信頼区間

EZRでフィッシャーの正確検定を集計データで行うには?

EZRでフィッシャーの正確検定を集計データでも行うことができる。

メニューの「統計解析」から「名義変数の解析」の中の「分割表の直接入力と解析」を用いる。

f:id:toukeier:20210815110210p:plain
分割表の直接入力と解析

直接入力するダイアログボックスが開くのだが、直接入力する枠が表示されていないため、行数のスライドバーを動かして枠を表示させる。

(EZR version 1.52で生じる症状。1.54では修正されている)

f:id:toukeier:20210815110319p:plain
直接入力画面(枠調整前)

一度行数を3にすると、3x2の枠が現れる。その後行数を2に戻すと2x2の枠になる。

f:id:toukeier:20210815110612p:plain
2x2の枠が表示される(枠調整後)

2x2の枠に集計値を入力する。先ほどの集計結果を使って入力してみる。

f:id:toukeier:20210815110758p:plain
枠内に集計値を入力する

OKをクリックすると、先ほどと同じ結果が表示される。

f:id:toukeier:20210815110852p:plain
フィッシャーの正確検定結果。ハイライト部分がオッズ比の95%信頼区間

EZRでフィッシャーの正確検定のオッズ比の信頼区間のパーセントを変えるには?

EZRでフィッシャーの正確検定を行った結果オッズ比が表示されるが、その信頼区間は一般的な95%である。

この信頼区間の信頼度を90%にしたい場合はどうすればいいか?

ダイアログボックスでは選択・調整する項目がないので、Rスクリプトを書き替えて、再実行する。

まず、Rスクリプト内に以下の部分を見つける。

fisher.test(.Table)

上下を含めた個所をスクショしてみると以下の通り。

f:id:toukeier:20210815111322p:plain
fisher.test(.Table)を見つける

次に、該当部分をコピーして、Rスクリプトの最後に張り付け、()内にconf.level=0.9と書き入れる。

fisher.test(.Table, conf.level=0.9)

書き入れたスクショは以下の通り。

f:id:toukeier:20210815111550p:plain
fisher.test(.Table, conf.level=0.9)

最後に、ハイライトしたまま、右端の実行ボタンをクリックする。

そうすると以下のように出力される。

f:id:toukeier:20210815111701p:plain
fisher.test(.Table, conf.level=0.9) の出力結果。ハイライト部分が90%信頼区間

先ほどの95%信頼区間よりも幅が狭い90%信頼区間が計算されているのがわかる。

データを使った方法でも、直接入力でも、fisher.test(.Table)の部分は同じなので、同じ手順でパーセントを変えた信頼区間を計算させることができる。

f:id:toukeier:20210815111916p:plain
データセットを使った場合のスクリプト部分。fisher.test(.Table)は同じことがわかる

まとめ

EZRでフィッシャーの正確検定は、集積したデータから集計したのち計算することも、集計値を直接入力して計算することも、いずれの方法でも実施可能である。

計算されるオッズ比の信頼区間は、標準では95%信頼度であるが、Rスクリプトを使い、conf.level=というオプションを使えば、90%など異なるパーセントに変更することが可能である。

EZR公式マニュアル

EZR開発者執筆の公式マニュアル。EZRの使い方をきちんと学びたければぜひ。