統計推理。どう計算したのだろう。比率の信頼区間
どう計算したのだろう。比率の信頼区間
日経メディカルで、コデインの小児への処方が制限されたと言う記事を見た。
PDMA(医薬品医療機器総合機構)が運営するMID-NETというデータベースを利用した解析結果が参考にされたらしい。
http://www.jpa-web.org/dcms_media/other/%E3%82%B3%E3%83%87%E3%82%A4%E3%83%B3%20%E8%A8%98%E8%80%85%E6%87%87%E8%B3%87%E6%96%99.pdf
このpdfが元資料と思われた。
MID-NET(2009年~2015年)
↓
対象期間中に協力医療機関を受診(976,859人)
↓
コデイン含有製剤が処方された患者(癌の診断をもつ患者を除く)(7,267人)
↓
12歳未満209人
12-18才未満199人
19才以上6859人
コホート全体:ケース24人 対象者7267人 発生割合0.3% 95%CI:0.2-0.4
12-18才:ケース0人 対象者数199人 発生割合0 95%CI:0.0-0.0
この95%CIが気になった。どうみても2項分布ではない。どんな手法なのだろう。
手法がわかれば、個人情報保護の観点から隠されている他のグループの発生割合が分かるのではないか。
そもそも、これ個人情報なのか?????普通に公開すれば良いんじゃない?
Rで解析してみる。
binom.confint(24, 7267, conf.level = 0.95) inom.confint(0, 199, conf.level = 0.95) > binom.confint(24, 7267, conf.level = 0.95) method x n mean lower upper 1 agresti-coull 24 7267 0.003302601 0.002195053 0.004934996 2 asymptotic 24 7267 0.003302601 0.001983493 0.004621708 3 bayes* 24 7267 0.003370941 0.002094457 0.004725895 4 cloglog 24 7267 0.003302601 0.002183660 0.004857300 5 exact 24 7267 0.003302601 0.002117150 0.004910048 6 logit 24 7267 0.003302601 0.002214581 0.004922527 7 probit 24 7267 0.003302601 0.002197326 0.004884659 8 profile 24 7267 0.003302601 0.002152623 0.004802072 9 lrt 24 7267 0.003302601 0.002162413 0.004827145 10 prop.test 24 7267 0.003302601 0.002165131 0.004991762 11 wilson 24 7267 0.003302601 0.002220409 0.004909641
0.2-0.4%になるものは無い!!!!!
> binom.confint(0, 199, conf.level = 0.95) method x n mean lower upper 1 agresti-coull 0 199 0.0000 -0.003858684 0.022796917 2 asymptotic 0 199 0.0000 0.000000000 0.000000000 3 bayes 0 199 0.0025 0.000000000 0.009593465 4 cloglog 0 199 0.0000 0.000000000 0.018366328 5 exact 0 199 0.0000 0.000000000 0.018366328 6 logit 0 199 0.0000 0.000000000 0.018366328 7 probit 0 199 0.0000 0.000000000 0.018366328 8 profile 0 199 0.0000 0.000000000 0.016761237 9 lrt 0 199 0.0000 0.000000000 0.009621873 10 prop.test 0 199 0.0000 0.000000000 0.023605824 11 wilson 0 199 0.0000 0.000000000 0.018938233
0.0-0.0%になるものは、asymptoticしかない。
その他、連続数として平均値でやったのかとか色々試みたが、すべて一致しない。
一体どんな手法を使ったのだろう。教えてエライ人。
一つの推理として
信頼区間の上限が0になるので、asymptotiを使用したと仮定。
90%CIと間違えた可能性(qnorm(0.975)をqnorm(0.95)にした)を考えると、
method x n mean lower upper
1 asymptotic 24 7267 0.003302601 0.002195571 0.004409631
これは、0.2-0.4%と記載できる。
これで、24人のケースを総当りする
result <- matrix(0, nrow = 23, ncol = 10) colnames(result) <- c("x", "n", "mean", "lower", "upper", "x", "n", "mean", "lower", "upper") for(i in 1:23){ result[i, ] <- unlist(c(binom.confint(i, 209, methods = "asymptotic", conf.level = 0.90)[2:6], binom.confint(24-i, 6859, methods = "asymptotic", conf.level = 0.90)[2:6])) }
x n mean lower upper x n mean lower upper [1,] 1 209 0.004784689 -0.0030665735 0.01263595 23 6859 0.0033532585 2.205102e-03 0.0045014148 [2,] 2 209 0.009569378 -0.0015072609 0.02064602 22 6859 0.0032074646 2.084464e-03 0.0043304657 [3,] 3 209 0.014354067 0.0008208182 0.02788732 21 6859 0.0030616708 1.964409e-03 0.0041589326 [4,] 4 209 0.019138756 0.0035498817 0.03472763 20 6859 0.0029158769 1.844981e-03 0.0039867731 [5,] 5 209 0.023923445 0.0065371152 0.04130977 19 6859 0.0027700831 1.726226e-03 0.0038139399 [6,] 6 209 0.028708134 0.0097091021 0.04770717 18 6859 0.0026242893 1.608199e-03 0.0036403791 [7,] 7 209 0.033492823 0.0130221306 0.05396352 17 6859 0.0024784954 1.490961e-03 0.0034660294 [8,] 8 209 0.038277512 0.0164476570 0.06010737 16 6859 0.0023327016 1.374583e-03 0.0032908203 [9,] 9 209 0.043062201 0.0199658122 0.06615859 15 6859 0.0021869077 1.259145e-03 0.0031146699 [10,] 10 209 0.047846890 0.0235620992 0.07213168 14 6859 0.0020411139 1.144745e-03 0.0029374828 [11,] 11 209 0.052631579 0.0272255514 0.07803761 13 6859 0.0018953200 1.031494e-03 0.0027591458 [12,] 12 209 0.057416268 0.0309476318 0.08388490 12 6859 0.0017495262 9.195286e-04 0.0025795238 [13,] 13 209 0.062200957 0.0347215384 0.08968038 11 6859 0.0016037323 8.090121e-04 0.0023984526 [14,] 14 209 0.066985646 0.0385417454 0.09542955 10 6859 0.0014579385 7.001471e-04 0.0022157298 [15,] 15 209 0.071770335 0.0424036907 0.10113698 9 6859 0.0013121446 5.931882e-04 0.0020311011 [16,] 16 209 0.076555024 0.0463035546 0.10680649 8 6859 0.0011663508 4.884626e-04 0.0018442389 [17,] 17 209 0.081339713 0.0502381007 0.11244133 7 6859 0.0010205569 3.864044e-04 0.0016547095 [18,] 18 209 0.086124402 0.0542045576 0.11804425 6 6859 0.0008747631 2.876091e-04 0.0014619171 [19,] 19 209 0.090909091 0.0582005306 0.12361765 5 6859 0.0007289692 1.929343e-04 0.0012650042 [20,] 20 209 0.095693780 0.0622239329 0.12916363 4 6859 0.0005831754 1.036962e-04 0.0010626546 [21,] 21 209 0.100478469 0.0662729329 0.13468400 3 6859 0.0004373815 2.211008e-05 0.0008526530 [22,] 22 209 0.105263158 0.0703459128 0.14018040 2 6859 0.0002915877 -4.750476e-05 0.0006306801 [23,] 23 209 0.110047847 0.0744414345 0.14565426 1 6859 0.0001457938 -9.399821e-05 0.0003855859
12歳未満が0.0-1.0%になるのは、無いが、とても近い0.0-1.3%。エクセルとかで有効桁数字の表示に失敗して1%になったものを1.0%と書いたと考えると、その時19才以上は0.2-0.5%で一致する。
ということで、小児12歳未満は1/209、19才以上は23/6859と推理するがどうでしょう。
もしそうなら、小児は1例だけって、酷すぎるデータだと思うんだけど。
また、1例なら、個人情報保護とか言うのも何となくしっくりくる。
そもそも、10例未満だから個人情報考えて非公開と書いているくせに、10/6859=0.145%なので、95%CIが0.2-0.5%
には絶対にならないんですが。
まあ引き算で特定出来るからでしょうけど、素直に読むとどちらも10例未満かと思っちゃうよね。
ちなみに90%じゃなくて、95%CIだと
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10] [1,] 1 209 0.004784689 -0.0045706672 0.01414005 23 6859 0.0033532585 1.985146e-03 0.0047213711 [2,] 2 209 0.009569378 -0.0036292513 0.02276801 22 6859 0.0032074646 1.869326e-03 0.0045456030 [3,] 3 209 0.014354067 -0.0017717935 0.03047993 21 6859 0.0030616708 1.754203e-03 0.0043691388 [4,] 4 209 0.019138756 0.0005634666 0.03771405 20 6859 0.0029158769 1.639825e-03 0.0041919284 [5,] 5 209 0.023923445 0.0032063552 0.04464053 19 6859 0.0027700831 1.526251e-03 0.0040139151 [6,] 6 209 0.028708134 0.0060693911 0.05134688 18 6859 0.0026242893 1.413544e-03 0.0038350350 [7,] 7 209 0.033492823 0.0091004885 0.05788516 17 6859 0.0024784954 1.301776e-03 0.0036552147 [8,] 8 209 0.038277512 0.0122656354 0.06428939 16 6859 0.0023327016 1.191033e-03 0.0034743704 [9,] 9 209 0.043062201 0.0155411563 0.07058325 15 6859 0.0021869077 1.081411e-03 0.0032924046 [10,] 10 209 0.047846890 0.0189097770 0.07678400 14 6859 0.0020411139 9.730244e-04 0.0031092033 [11,] 11 209 0.052631579 0.0223584299 0.08290473 13 6859 0.0018953200 8.660081e-04 0.0029246320 [12,] 12 209 0.057416268 0.0258769427 0.08895559 12 6859 0.0017495262 7.605230e-04 0.0027385293 [13,] 13 209 0.062200957 0.0294572101 0.09494470 11 6859 0.0016037323 6.567648e-04 0.0025506999 [14,] 14 209 0.066985646 0.0330926480 0.10087864 10 6859 0.0014579385 5.549744e-04 0.0023609025 [15,] 15 209 0.071770335 0.0367778200 0.10676285 9 6859 0.0013121446 4.554552e-04 0.0021688341 [16,] 16 209 0.076555024 0.0405081749 0.11260187 8 6859 0.0011663508 3.585973e-04 0.0019741043 [17,] 17 209 0.081339713 0.0442798561 0.11839957 7 6859 0.0010205569 2.649176e-04 0.0017761963 [18,] 18 209 0.086124402 0.0480895615 0.12415924 6 6859 0.0008747631 1.751259e-04 0.0015744003 [19,] 19 209 0.090909091 0.0519344374 0.12988374 5 6859 0.0007289692 9.024420e-05 0.0013676943 [20,] 20 209 0.095693780 0.0558119973 0.13557556 4 6859 0.0005831754 1.184068e-05 0.0011545101 [21,] 21 209 0.100478469 0.0597200589 0.14123688 3 6859 0.0004373815 -5.744492e-05 0.0009322080 [22,] 22 209 0.105263158 0.0636566941 0.14686962 2 6859 0.0002915877 -1.124659e-04 0.0006956413 [23,] 23 209 0.110047847 0.0676201896 0.15247550 1 6859 0.0001457938 -1.399360e-04 0.0004315237
やはり12歳未満のケースが1例なのが一番近い。
もし1例だけのデータだけで制限となるともやっとするなあ。元の1例が別の病気だったらアウト。
でもまあ、子供にコデインなんか処方しないでよろし。
エライ人のもっとしっくりくる推理希望~。何か他の手法が有るのだろうか。
当初は元データを再現してデータ伏せても意味ないじゃ~んとなるはずが、しっくりこない記事になってしまった。