事前確率から尤度比を使って事後確率を求める

新型コロナウイルスが国内で様々な混乱を引き起こしていますが、政治も医療もてんやわんやとなっています.

PCRの検出感度が高くないこと、8割は元気だけど重症化する人もそれなりにいて広まりやすいくせに診断しにくい、という困ったやつです.

PCRが保険診療内で実施できるような体制を整える、という官邸の発表を称賛する人もいれば、警鐘を鳴らす人もいます。

が、その2群の議論がしばしばかみ合っていないように思うのです.

PCRどんどんやろう!という人からは、感染防御策をどうするか、という意思決定に必要な情報を与えてくれる、というもっともな意見もあれば、もっと単純に、「とにかく検査で白黒つけたい」という意見も聞かれます.

PCRに慎重な人からは、軽症な人や「無症状だけど職場や学校から言われて…」という人まで検査したら貴重な医療リソースが枯渇してしまう、というような声や、陰性者の扱いが難しいなどの懸念がよくきかれるように思います.

しかし、議論がかみ合わない原因として、

両者の「P」がずれている

という要因が大きい気がします.

つまり、どのような集団を対象としていて、流行のどのフェースの話をしているのかを明らかにしないまま議論がかわされているように見えることがあるのです.

「PCRの適応」「学校の一斉休業」などには個人的には色々なことは思う一方で、ここでは疫学的な思考を以って、上記2群の考えのズレの正体を分析してみたいと思います.

  1. 陽性・陰性尤度比を求めて検査前後の確率の変化を計算する
  2. いろんな事前確率において事後確率がどう推移するのかをグラフ化する
  3. おまけ(Stataでグラフ化)

というステップで解いていきます.

1.陽性・陰性尤度比から検査前後の確率の変化を計算

まず、以下の計算式を復習してみましょう.

陽性尤度比 = 検査後オッズ ÷ 検査前オッズ

オッズとは何かが生じる確率を生じない確率で割ったものです.つまり、

P ÷ (1-P)

で求められます.

検査後の確率をP(検査後)、検査前の確率をP(検査前)として、検査が陽性のときは陽性尤度比を用いるので、

P(検査後) ÷ ( 1ーP(検査後))

= 陽性尤度比 ×  ( P(検査前) ÷ ( 1ーP(検査前)) )

これを変形すると、

P(検査後) 

= 陽性尤度比 × P(検査前) ÷ ((陽性尤度比 ー 1)× P(検査前) +1 )

検査が陰性のときには陰性尤度比を用いるだけです.

2. いろいろな事前確率において事後確率がどう推移するかグラフ化

コロナウイルスのPCRの感度や特異度は報告によってまちまちです.

だいたいいろいろなところの情報源を漁ってみると、感度30~70%、特異度は99%というところに収まりそうですので、感度を30%、50%、70%の場合に分け、特異度は99%で固定して検討してみることにします.

事前確率ですが、3/4の夕刊に「国内症例1000例超える」の文字が躍っていましたので、現時点で全国民を症状の有無や背景に関係なくランダムに検査した場合を一番下の事前確率とします.

日本では3/1の時点の厚生労働省の発表で1688件PCRを実施し、そのうち224件が陽性であり、13.3%の陽性率でした.

これから爆発的に患者が増えていき、有病割合が30%くらいまでの想定をしながらグラフ化してみることにしましょう.

特異度は99%で固定、 感度を30%、50%、70%の場合に分け てグラフ化してみます.

未だに流行が確認されていないような地域(グラフの左寄り)で、ランダムに検査してしまうと、仮に陽性とでてもその結果は信頼できない(10%も行かない)ものになりますし、逆に流行期においては検査が陰性であっても誤って疾患がないものとして分類されてしまう患者の割合が多くなってしまいます(グラフの右寄り).

ということで、まとめると事前確率の低いときにはPCR陽性結果を鵜呑みにできないこと、流行期に入るとPCR陰性でも結構な割合で患者がいるということになります.

ここで、非流行地での孤発的な陽性例にどう対応するかが非常に問題になることが想像できると思います.

渡航歴や濃厚接触歴、呼吸器症状など、周辺的な情報をかき集めて事前確率を設定するしかないと思います.

濃厚接触歴がなく、呼吸器症状も乏しい、非流行地の患者さんが、職場からの求めでやってきた、という状況を想像していただくと、かなり左端に近い集団になりますので、PCRの結果が陽性でも陰性でも全くあてになりません.

逆に、入院患者や重症度の高い患者ではグラフの右寄りになっていくわけですが、たとえ事後確率がそれほど高くなくてもやはりPCR陽性例に対しては診断が正しい前提で進めるしかないでしょう.

また、流行期や、患者の状態によってはPCR陰性であっても陽性例と同じ対応をする、という判断が必要になる場合があります.

こうした患者背景も「どんな集団」であるかを見極めて検査結果の解釈をする上では重要な判断材料になります.

こうした前提があることを考えると、「どんな集団」を対象として「流行のいつの時点」での話をしているのかを明確にしないと同じ土台で話ができないのがお分かりいただけるでしょうか.

さらには日本中でウイルス感染自体が広まってきており、有病割合自体が右に徐々にシフトしてきているという点がありますので、今の時点がどうなのか、引き続き疫学的な情報を収集し続けることは重要であると言えます.

3.Stataでグラフ化

これまでのグラフはエクセルで作ってしまいましたが、このブログはStata縛り(?)にしていますので、Stataでグラフ化しておこうと思います.

clear
input pretest 
0.00001
0.0001
0.001
0.005
0.01
0.05
0.1
0.2
0.3
end

gen PLR70 = 0.7/(1-0.99)
gen NLR70 = (1-0.7)/0.99
gen PLR50 = 0.5/(1-0.99)
gen NLR50 = (1-0.5)/0.99
gen PLR30 = 0.3/(1-0.99)
gen NLR30 = (1-0.3)/0.99

gen posttest70pos = PLR70*pretest / ((PLR70-1)*pretest+1)
gen posttest70neg = NLR70*pretest / ((NLR70-1)*pretest+1)
gen posttest50pos = PLR50*pretest / ((PLR70-1)*pretest+1)
gen posttest50neg = NLR50*pretest / ((NLR70-1)*pretest+1)
gen posttest30pos = PLR30*pretest / ((PLR70-1)*pretest+1)
gen posttest30neg = NLR30*pretest / ((NLR70-1)*pretest+1) 
delimit;
twoway 
(scatter posttest70pos pretest, connect(l) lcolor(navy) mcolor(navy))
||
(scatter posttest70neg pretest, connect(l) lcolor(maroon) mcolor(maroon))
||
(scatter posttest50pos pretest, connect(l) lcolor(navy%50) mcolor(navy%50))
||
(scatter posttest50neg pretest, connect(l) lcolor(maroon%50) mcolor(maroon%50))
||
(scatter posttest30pos pretest, connect(l) lcolor(navy%30) mcolor(navy%30))
||
(scatter posttest30neg pretest, connect(l) lcolor(maroon%30) mcolor(maroon%30))
,
xscale(range(0.00001 0.3) log) 
xlabel(0.00001 "0.001%" 0.0001 "0.01%" 0.001 "0.1%" 0.01 "1%" 0.05 "5%" 0.1 "10%" 0.3 "30%")
legend(order(1 "PCR(+) 感度70%の場合" 2 "PCR(-) 感度70%の場合" 3 "PCR(+) 感度50%の場合" 4 "PCR(-) 感度50%の場合" 5 "PCR(+) 感度30%の場合" 6 "PCR(-) 感度30%の場合") pos(10) ring(0) col(1)) 
xtitle(Pretest probability) ytitle(Posttest Probability)     
;
delimit cr

線やマーカーの色は、”色の名前%数値”とすれば濃淡をつけることができます.

4.まとめ

検査の特性(感度・特異度)と疫学情報(有病割合)から事前事後の確率推移をグラフ化しました.

冒頭の話のかみ合わなさは、どの事前確率の人たちを対象にした話なのかが明確にならないままに議論されていることから生じているのではないか、と思うわけです.

事前確率は時間が経ては変化していきますので、そういった状況を予測しつつ対策を立てていく必要がある、ということを疫学的な側面から述べてみました.

何とか早く収束してほしいですね.

コメント

  1. Y.SAKAI より:

    70歳台の内科医です。コロナウイルス感染者に対するPCR検査の妥当性がよく議論
    されていますが、何かスッキリしないのでネットを調べていましたら、興味深い
    サイトが有りましたので教えて下さい。
    2020年4月14日のデータ
    PCR検査者 527,438 陽性者 25,215 陰性者 502,223 感染者 10,564
    有病率2.9%(高い)となり、仮に感度70%で計算すると特異度97.1% 陽性的中率
    41% 陰性的中率97.1%となりますが、先生のグラフでは陽性的中率60~70%の
    位置になります。どうして差が出たのか教えていただければ幸いです。

    • 管理者 より:

      ご質問ありがとうございます。
      「PCR検査者 527,438 陽性者 25,215 陰性者 502,223 感染者 10,564」
      という結果からは、有病割合は10564÷527438=0.02(2%)となるでしょうか。
      ここでいう患者数が10500、というのがどこから出てきた数字かがよくわかっていないので、それが正しいと仮定して計算させてください。
      2×2の表を書くと、病気の人10500名、仮にPCRが70%程度の感度だとすると、PCR陽性は7000名程度となります。
      ここで、計算を単純化するために真のCOVID-19患者数を10000、違う人を500000名とさせてください。
      特異度99%で計算すると、500000×0.01=5000名の偽陰性患者を生み出しますので、陽性的中率が7000÷(7000+5000)=58%と計算されます。
      特異度を記述されている97.1%として計算すると、間違って陰性と分類される本来の患者が500000×0.029=14500名となりますので、
      わずか32%しか陽性的中率がないことになってしまいます。

      私の記事は、検体がきちんととれていること、サンプリングされる対象集団がバイアスのある集団でないことが前提となっております。
      検体を正しくとれなくてPCRの感度が悪いのだ、とすると根底から崩れてしまいます。
      また、サンプリングにバイアスが生じるときにもこの結果はしばしばアテにならない可能性があります。
      というよりそもそも感度や特異度の設定段階で、バイアスのある集団では結果が異なることが知られています。
      「確証バイアス」といわれております。
      きわめて疑いの強い方にしか検査を行わないとその感度も特異度も歪められてしまうというものです。
      機会があればそのあたりの解説もして参りたいと思っております。

      以上ですが、回答になっておりますでしょうか?

      • Y.SAKAI より:

        御返事有り難うございました。上記のデータは韓国の最近のデータです。
        韓国ではコロナウイルス感染に対してPCR検査が大規模に施行されていて封じ込めに成功しているとの報道があり、PCR検査の評価が高いので
        その理由を調べていました。検査総数に比較して意外と陽性率が低く
        2~4%位、有病率2~4%(高い集団)ですので日本とは比較できない
        かもしれません。検査前確率(有病率)が低い集団(全国民をしらみつぶし)に調べても無意味。症状がありインフルエンザ等が否定的、3密の状態、濃厚接触者、無症状で発熱のみなどの集団を調べるしかないのかなと思います。何か得体のしれないウイルスなので先が思いやられます。ところで、コロナウイルス感染の確定診断の根拠は何なんでしょうか。電子顕微鏡?PCR検査?肺のCT?臨床症状?抗原抗体反応?
        インフルエンザウイルス抗原迅速キットなどのインムノクロマトグラフィーが早くできないですかね。マウスにモノクロナール抗体反応を作製するのに時間がかかりそうですが。駄文失礼しました。

        • 管理者 より:

          追加コメントありがとうございます。私もこの診断確定した根拠を知りたいなあと思っていました。PCRが陽性の場合、今ですと病気はほぼ確定、という風になりますので、実際の数字ではあり得ないような気がするのですが。あるいは複数回PCR実施して初回陰性のものを陰性としてカウントしていれば何となく話はあうかもしれません。いずれにしろ概念的なモノからは出ない気がしています。
          仰るとおり、先が思いやられますね。100年前のように第2波、第3波が恐ろしいです。月の単位で解決するとは思えません。人類全体がimmunityを獲得するまでこの戦いは続くのではないでしょうか。そしてそれは戦争が起こったのと同じくらいのインパクトを世界にもたらしそうです。

  2. a より:

    特異度は99%よりずっと高いですよ
    https://www.niid.go.jp/niid/images/lab-manual/2019-nCoV-17-20200318.pdf

    • 管理者 より:

      コメントありがとうございます。感度と特異度は「何を正解にするか」によって解釈が異なりますね。
      この場合は、別の検査結果の結果との一致率を調べたに過ぎないようですので、これは我々が欲しい結果とは違うと思います。
      一方で、患者がPCR陰性であっても診断を確定する例が話題になりましたね。真のケースというのは判断が難しいので、
      いわゆるGold standardとなる結果が本当に正しいのか、実のところ誰にもわからないのです。
      なので、この議論はかなり抽象的なものになりやすい点に注意が必要だと思います。

  3. […] 一般的によく信じられていることとして、検査の感度や特異度というのはいかなる集団においても変わらない、ということがありますが、これは正しいでしょうか?確かに、検査後の確率というのは、感度や特異度を固定して、変動する事前確率から計算を行います(以前の記事). […]

タイトルとURLをコピーしました