豚バラ大根ノート

豚バラ大根をおいしく作る秘訣はここには書かれていません.

PCR検査の特異度の推定について

はじめに

ネット上で散見される,PCR検査の特異度を99%(もしくはそれ以下)とする仮定の下でのベイズ推定を用いた偽陽性数の推定について,牧田寛氏がHarbor Business Onlineの記事

島根県の事例からも数字で明らかになる「検査をすると患者が増える」説のデタラメさ( リンク)

で,同じくベイズ推定を用いてその誤りを指摘している.「ベイズのことにはベイズで答える」という方針だとは思うが,統計の授業で必ず習い,データを統計処理することがある研究者ならば必ず理解しているはずの「仮説の検定」を用いると「特異度99%」を仮定することの誤りがより鮮明となるので,それを指摘しておきたい.

計算がしやすい状況として,牧田寛氏が扱っていた島根県と未だ感染者が発見されていない岩手県を例として,「特異度99%」という仮説を検定してみる.ネット上で散見されるベイズ推定による推論では,各PCR検査は互いに独立で同じ特異度を持つことが仮定されているので,ここでもそれを仮定しておく.

岩手県

PCR検査数(2月13日から7月21日): 1251
陽性者数:0

「特異度99%(陰性者が1%の確率で陽性と判定される)」という仮説の下で1251件検査して陽性と判定されるものが0である確率は,

 0.991251 = 0.000003464.. < 0.0004%

となる*1,この確率は2020年のサマージャンボ宝くじを1枚買って3等が当たるのとほぼ同等なので,特異度が99%であるという仮説は強く棄却される.

なお,「特異度99.9%(陰性者が0.1%の確率で陽性と判定される)」という仮説の下で1251件検査して陽性と判定されるものが0である確率は,

0.9991251 = 0..2860... > 28.5%

となり,この仮説は通常は棄却されない.なお,特異度99.9%とすると,100万件検査した場合の偽陽性者は平均1000人なので,この7月4日から25日までの3週間で感染が確認された約1万人に比べても1/10である.

島根県

PCR検査数(7月22日現在): 734

陽性者数: 1

(上の牧野氏の記事のデータより)

 「特異度99%(陰性者が1%の確率で陽性と判定される)」という仮説の下で734件検査して陽性と判定されるものが1以下である確率は,

  • 実は全員陰性 :
    0.99734 + 734 × 0.01 × 0.99733 = 0.005263... < 0.53%
  • 1人が陽性の場合:陽性者が陽性と判定される確率を 0<p<1 とすると,
    • 陽性者が陽性と判定され,陰性者は全て陰性と判定される:
      p × 0.99733 = p × 0.0006318... < 0.06%
    • 陽性者が陰性と判定され(偽陰性),陰性者一人が陽性と判定される(偽陽性):
      (1-p) × 733 × 0.01 × 0.99732 = (1-p) × 0.0046780... < 0.47%

となるので,陽性と判定されるものが1人以下である確率はいずれにせよ0.53%以下となり,やはり特異度が99%であるという仮説は強く棄却される*2

なお,特異度が99.9%であると仮定すると,このデータに関しては統計的には十分に妥当な仮説となる*3

結論

PCR検査の特異度99%とする仮定は統計的に棄却されるので,それをもとにベイズ推定をして偽陽性数を推定しても意味がない.

追記:

実際の特異度はもっと100%に近いとも言われているが,あくまで「特異度99%」の仮定が不適切であることを簡単な統計処理で示すのがこの文書の目的なので,実際の特異度についての議論はここではしない.

追記2(2020年7月30日)

734人のデータは「鳥取県」ではなく「島根県」でした.向瀬慎一様,ご指摘*4ありがとうございました.「またか」と思われた両県の皆様にもお詫び申し上げます.

誤植の修正(2020年8月1日)

島根県の「全員陰性」の計算で0.005263...となるべきところが,0.05263...となっていたので修正しました.

注1,注2についての補足(2020年8月2日)

「岩手の場合,全員が本当に陰性の場合のみ考えていて陽性者が偽陰性になっている場合が考慮されていないのでは」との疑問を持った方がいるようで,これらの注だけでは不親切な気がしてきたので,その場合の計算もしておくことにする.検査の感度をp,特異度をqとすると,陰性者が陽性と判定される確率は1-qとなる.陽性者が陽性と判定される確率が,陰性者が陽性と判定される確率以下であるならば検査の意味がなくなってしまうので,p > 1-q と仮定しても問題はないだろう.さて,1251人のうちm人が本当は陽性だとして,岩手県で観測された状況,すなわち1251人全員が陰性と判定される確率を計算しよう.

1人の陽性者が陰性判定を受ける確率は 1-p なので,m人の陽性者が全員陰性判定を受ける確率は(いつもの独立性を仮定すれば)

(1-p)m

となる.また,1人の陰性者が陰性判定を受ける確率は q なので,残りの(1251-m)人の陰性者が全員陰性判定を受ける確率は,

q1251-m

となる.今,p > 1-q であることから q > 1-p であることに注意すると,陽性者が一人でもいる場合,1251人全員が陰性判定を受ける確率は,

(1-p)m × q1251-m < qm × q1251-m = q1251

 となり,全員が本当に陰性だった場合の全員陰性判定の確率 q1251 よりも小さくなる.すなわち,実際には陽性者がいる場合は「全員陰性判定」の確率がより小さくなるので,この場合を考慮しても結果は変わらない.島根県の場合も同じ考察で実際には陽性者がもっと多い場合でも変わらないことがわかるので,気になる人は自分でも確かめてみてほしい.

*1:1251回99%の確率のものが独立に選ばれる確率である.なお,陽性者がいてもそれが陰性と判定される(偽陰性がいる)ことで陽性と判定されるものの数が0となる確率はこれよりも低くなるので,ここでは気にしない.補足も参照のこと

*2:p> 0.1くらいでも,実際には2人以上陽性者がいる場合は陽性と判定されるものの数が1人以下である確率はより低くなるので,ここでは気にしないことにする.

*3:734 × 0.001=0.7より,全員陰性でも平均0.7人陽性として判定されるので,確かに妥当であろう.

*4:https://twitter.com/mukose3/status/1288595679233716224