MENU

EZR の 2 群の比率の差の信頼区間計算で小数点以下の桁を増やす方法

EZRで2群の比率の差の信頼区間を求めると小数点以下3桁に丸められた数値が出力される。

小数点以下の桁数を増やす方法。

>>もう統計で悩むのは終わりにしませんか? 

↑期間・数量限定で無料プレゼント中!

目次

EZRで2群の比率の差の信頼区間を求める

「統計解析」→「名義変数の解析」→「2群の比率の差の信頼区間の計算」メニューを使って、計算する。

例えば、47000分の460と39000分の200の差の95%信頼区間を計算すると、Rスクリプト窓に以下のように書かれて、出力窓に結果が表示される。

Rスクリプト

#####2群の比率の差の信頼区間の計算#####
prop.diff.conf(460, 47000, 200, 39000, 95)

出力

> prop.diff.conf(460, 47000, 200, 39000, 95)
[1] 比率の差     : 0.005
[1] 95% 信頼区間              : 0.004 - 0.006

EZRで2群の比率の差の信頼区間を計算するスクリプトを確認して一部変更する

Rスクリプト窓に、prop.diff.conf と書いて、実行し、prop.diff.conf関数の中身を表示させる。

prop.diff.conf()関数の中身は以下の通り。

> prop.diff.conf
function (r1, n1, r2, n2, conf)
{
alpha <- 1 - conf/100
p1 <- r1/n1
p2 <- r2/n2
D <- p1 - p2
SE <- sqrt(p1 * (1 - p1)/n1 + p2 * (1 - p2)/n2)
pl <- D - qnorm(1 - alpha/2) * SE
pu <- D + qnorm(1 - alpha/2) * SE
print(paste(gettext(domain = "R-RcmdrPlugin.EZR", "Difference :"),
" ", round(D, 3), sep = ""), quote = F)
print(paste(conf, gettext(domain = "R-RcmdrPlugin.EZR", "% confidence interval :"),
" ", round(pl, 3), " - ", round(pu, 3), sep = ""), quote = F)
}

下から 2 行目と 4 行目に、round(, 3)とあるところ計 3か所を、例えばround(,8)として、小数点以下8桁まで表示させるように変更する。

function (r1, n1, r2, n2, conf)
{
alpha <- 1 - conf/100
p1 <- r1/n1
p2 <- r2/n2
D <- p1 - p2
SE <- sqrt(p1 * (1 - p1)/n1 + p2 * (1 - p2)/n2)
pl <- D - qnorm(1 - alpha/2) * SE
pu <- D + qnorm(1 - alpha/2) * SE
print(paste(gettext(domain = "R-RcmdrPlugin.EZR", "Difference :"),
" ", round(D, 8), sep = ""), quote = F)
print(paste(conf, gettext(domain = "R-RcmdrPlugin.EZR", "% confidence interval :"),
" ", round(pl, 8), " - ", round(pu, 8), sep = ""), quote = F)
}

>>もう統計で悩むのは終わりにしませんか? 

↑1万人以上の医療従事者が購読中

EZRで2群の比率の差の信頼区間を計算する修正スクリプトを実行する

新しい関数名、例えば prop.diff.conf.rev という名前の関数に上記の内容を格納するというスクリプトをRスクリプト窓に貼り付けて実行する。

prop.diff.conf.rev <-
function (r1, n1, r2, n2, conf)
{
alpha <- 1 - conf/100
p1 <- r1/n1
p2 <- r2/n2
D <- p1 - p2
SE <- sqrt(p1 * (1 - p1)/n1 + p2 * (1 - p2)/n2)
pl <- D - qnorm(1 - alpha/2) * SE
pu <- D + qnorm(1 - alpha/2) * SE
print(paste(gettext(domain = "R-RcmdrPlugin.EZR", "Difference :"),
" ", round(D, 8), sep = ""), quote = F)
print(paste(conf, gettext(domain = "R-RcmdrPlugin.EZR", "% confidence interval :"),
" ", round(pl, 8), " - ", round(pu, 8), sep = ""), quote = F)
}

新しい関数 prop.diff.conf.rev() を使って、先ほどと同じ計算をしてみる。

Rスクリプト窓に、prop.diff.conf.rev(460, 47000, 200, 39000, 95) と書いて、実行をクリックする。

すると以下のように結果が表示される。小数点以下8桁まで表示されている。

> prop.diff.conf.rev(460, 47000, 200, 39000, 95)
[1] 比率の差     : 0.00465903
[1] 95% 信頼区間              : 0.0035212 - 0.00579685

まとめ

EZRで2群の比率の差の信頼区間を計算する場合、結果の値の小数点以下の桁数を変更するには、メニューやダイアログボックスからは変更できないが、Rスクリプトを少し修正すると可能である。

おすすめ書籍

EZR公式マニュアル

EZRでやさしく学ぶ統計学 改訂3版 〜EBMの実践から臨床研究まで〜
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

リサーチクエスチョン探し?データ分析?論文投稿?、、、で、もう悩まない!

第1章臨床研究ではなぜ統計が必要なのか?計画することの重要性
  • 推定ってどんなことをしているの?
  • 臨床研究を計画するってどういうこと?
  • どうにかして標本平均を母平均に近づけられないか?
第2章:研究目的をどれだけ明確にできるのかが重要
  • データさえあれば解析でどうにかなる、という考え方は間違い
  • 何を明らかにしたいのか? という研究目的が重要
  • 研究目的は4種類に分けられる
  • 統計専門家に相談する上でも研究目的とPICOを明確化しておく
第3章:p値で結果が左右される時代は終わりました
  • アメリカ統計協会(ASA)のp値に関する声明で指摘されていること
  • そうは言っても、本当に有意差がなくてもいいの…?
  • なぜ統計専門家はp値を重要視していないのか
  • 有意差がない時に「有意な傾向があった」といってもいい?
  • 統計を放置してしまうと非常にまずい
第4章:多くの人が統計を苦手にする理由
  • 残念ながら、セミナー受講だけで統計は使えません。
  • インプットだけで統計が使えない理由
  • どうやったら統計の判断力が鍛えられるか?
  • 統計は手段なので正解がないため、最適解を判断する力が必要
第5章:統計を使えるようになるために今日から何をすれば良いか?
  • 論文を読んで統計が使えるようになるための5ステップ
第6章:統計を学ぶために重要な環境
  • 統計の3つの力をバランスよく構築する環境

以下のボタンをクリックして、画面に出てくる指示に従って、必要事項を記入してください。

この記事を書いた人

統計 ER ブログ執筆者

元疫学研究者

統計解析が趣味

コメント

コメントする

目次