ホームにもどる

印刷

感受性と特異性  Ssensitivity and Specificity

 ある病気にかかっている人にある検査をして陽性になる割合を感受性(sensitivity)と言います。 sensitivityは感度と訳したり、鋭敏度と訳したりもします。ある病気にかかっていない人にある検査をして陰性になる割合を特異性(specificity)と言います。specificityは特異度と訳したりもします。
 前立腺癌の腫瘍マーカーにPSA(prostate specific antigen)があります。PSA(の前立腺癌に対する感受性は72.1%で、特異性は93.2%という報告があります。つまり前立腺癌の人を100人集めて、PSAの検査をすると、72人の人がPSAが陽性になります。前立腺癌でない人を100人集めて、PSAの検査をすると、93人の人がPSAが陰性になります。
 感受性の定義はある病気にかかっている人の中である検査が陽性である割合です。特異性の定義はある病気でない人の中である検査が陰性である割合です。今eという検査とDという病気があるとします。eの感受性が80%、特異性が70%とします。するとDの病気にかかっている人はeの検査をすると80%が陽性になり、Dの病気でない人はeの検査をすると70%が陰性になるというのが、感受性、特異性の定義から言えることです。つまり、「Dがあるならeが陽性」ということが80%の確率で言えるというのが感受性で、「Dがないならeが陰性」ということが70%の確率で言えるというのが特異性です。
 私達が検査をするのは、病気があるかどうかを知るためです。ところが感受性、特異性の定義は、病気があれば何%の確率で検査が陽性になる、病気がなければ何%の確率で検査が陰性になるということを言っているのです。私達が知りたいのはその逆の検査が陽性であれば何%の確率で病気があると言えるのか、検査が陰性ならば何%の確率で病気がないと言えるのかです。感受性、特異性は、このことを言わないために、もどかしい所があります。だから対偶を考えたらよいのでないかと考えられます。数学的に考えると、「A⇒B」が真であれば、その対偶の「Bでない⇒Aでない」も真になります。「A⇒B」がP%の確率で真であれば、その対偶の「Bでない⇒Aでない」もP%の確率で真になります。これをDの病気とeの検査で考えると、「D⇒e」がP%の確率で真であれば、その対偶の「eでない⇒Dでない」もP%の確率で真になります。「Dでない⇒eでない」がQ%の確率で真であれば、その対偶の「e⇒D」もQ%の確率で真になります。これを利用すれば、ある検査が陽性ならどのくらいの確率で病気と言えるのか、ある検査が陰性であればどのくらいの確率で病気でないと言えるのかがわかるように思います。しかしこれはできないのです。感受性は病気を持っている人の集団で考えています。特異性は病気を持っていない人の集団で考えています。病気を持っている人の集団では対偶も同じ確率になりますから、「D⇒e」がP%の確率で真であれば、その対偶の「eでない⇒Dでない」もP%の確率で真になります。つまり「ある病気である⇒ある検査が陽性」が例えば80%の確率で言えるなら、その対偶「ある検査が陽性でない(陰性または中性)⇒ある病気でない」も80%の確率で言えます。ところがこれはある病気のある人の集団でのみ成立します。集団が変われば成立しません。もともとある病気があるとわかっている人の集団ですから、80%の確率である病気であるなどと言っても、何の意味も持ちません。すでにその病気があることがわかっているのですから。特異性も同じことです。特異性が例えば80%とすると、「ある病気でない⇒ある検査が陽性でない」はある病気がないとわかている人の集団で80%の確率で成立します。その対偶「ある検査が陽性⇒ある病気である」もある病気がないとわかている人の集団では80%の確率で成立します。しかしもともとある病気でないことがわかっているのですから、80%の確率である病気があると言っても何の意味も持ちません。集団が変わればこの対偶は成立しません。
 検査の対象とする集団はある病気の人もいれば、ある病気でない人もいる集団です。感受性を求めたある病気の集団や特異性を求めたある病気でない人の集団とはまったく別の集団です。だから対偶の考え方で病気である確率、病気でない確率を求めることはできないのです。
 ある一時点である病気になっている人の割合を有病率と言います。感受性80%、特異性70%、有病率は1%にして表をつくってみます。ある病気の人を100人とすると、全体の人数は有病率から100/0.01=10000人になります。だからある病気でない人は10000-100=9900人です。感受性80%ですから、真の陽性(①)は100×0.8=80人、偽陰性(③)は100×(1-0.8)=100×0.2=20人になります。特異性70%ですから、真の陰性(④)は9900×0.7=6930人、偽陽性(②)は9900×(1-0.7)=9900×0.3=2970人になります。

  ある病気あり ある病気なし
検査陽性 ① 80 ② 2970 3050
検査陰性 ③ 20 ④ 6930 6950
100 9900 10000

 検査陽性の中で真に病気のあるのは、80人です。検査陽性の人の中で、真に病気のある人の割合は(80/3050)×100=2.62% になります。これを陽性予測力(positive predictive value)と言います。陰性の中で真に病気のないのは、6930人で、検査陰性の人の中での割合は(6930/6950)×100=99.71%になります。これを陰性予測力(negative predictive value)と言います。
 一般的に考えると次のようになります。

  ある病気あり ある病気なし
検査陽性 a b a+b
検査陰性 c d c+d
a+c b+d a+b+c+d

感受性をs、特異性をtとすると、
s=a/(a+c)     t=d/(b+d) になります。
陽性予測力はa/(a+b) 陰性予測率はd/(c+d)です。
有病率は(a+c)/( a+b+c+d)です。
 ある事象が起こる確率をPとすると、その事象が起こらない確率は1-Pになります。この比P/(1-P)をオッズ(Odds)と言います。Oddsをrとするとr=P/(1-P)ですから、変形して、
r(1-P)=P
r-rP=P
r=rP+P
r=P(r+1)
r=P(1+r)
P(I+r)=r
P=r/(1+r)となり、オッズから確率が求まります。
 オッズ比は、2つの群のオッズの比を言います。A群のオッズがP/(1-P)で、B群のオッズがQ/1-Qならば、その比(P/(1-P))/(Q/1-Q)=P(1-Q)/(Q(1-P))になります。
 [特定の病気になっている人がある検査に対して陽性となる割合(確率)]/[特定の病気でない人がある検査に対して陽性となる割合(確率)]を尤度比(likelihood ratio)と言います。特定の病気でない人がある検査に対して陽性となる割合(確率)=1-特定の病気でない人がある検査に対して陰性となる割合(確率)ですから、尤度比は[特定の病気になっている人がある検査に対して陽性となる割合(確率)] /[1-特定の病気でない人がある検査に対して陰性となる割合(確率)]とも書けます。ここで特定の病気になっている人がある検査に対して陽性となる割合(確率)は感受性のことであり、特定の病気でない人がある検査に対して陰性となる割合(確率)は特異性のことですから、尤度比=感受性/(1-特異性) となります。因みに尤度比とは難しい漢字を使ったものです。大漢和を調べてみても、尤にlikelihoodの意味はありません。日常に使わないような言葉を訳語に使うべきではなく、この場合は意味から、陽性比ぐらいの訳がいいのでないでしょうか。
 上の表で有病率がある事象の起こる確率になります。ある事象の起こる確率をPとすると、
P=(a+c)/(a+b+c+d)です。オッズをrとすると、
r=P/(1-P)
r=((a+c)/(a+b+c+d))/(1-(a+c)/(a+b+c+d))
r=((a+c)/(a+b+c+d))/((b+d)/(a+b+c+d))
r=(a+c)/(b+d)
になります。尤度比をuとすると、u=(a/(a+c))/(b/(b+d))です。これを変形すると、
u=(a/(a+c))/(b/(b+d))
u =(a/(a+c))/(1-(d/(b+d))
u=s/(1-t)
となり、感受性、特異性から尤度比が計算できます。
オッズに尤度比をかけると、
ru=((a+c)/(b+d))((a/(a+c))/(b/(b+d))
ru =((a+c)/(b+d))(a(b+d)/(b(a+c))
ru=a/b
これを変形すると、
ru=a/b
ru=(a/(a+b)/(b/(a+b))
ru=(a/(a+b))/(1-(a/(a+b))
これは検査陽性の群で病気が起こる確率と起こらない確率の比ですから、オッズです。これを検査後オッズと言います。検査後オッズ=検査前オッズ×尤度比 で求まるのです。
 有病率から陽性予測力を考える時、有病率が低い、まれな疾患だと極端に低い値になってしまいます。先に感受性80%、特異性70%とし、有病率は1%で計算しましたが、今度は有病率を0.001%(10万人に1人)にして計算してみます。ある病気の人を100人とすると、全体の人数は100/0.00001=10000000人になります。だからある病気でない人は10000000-100=9999900人です。感受性80%ですから、真の陽性(①)は100×0.8=80人、偽陽性(③)は100×(1-0.8)=100×0.2=20人になります。特異性70%ですから、真の陰性(④)は9999900×0.7=6999930人、偽陰性(②)は9999900×(1-0.7)=9999900×0.3=2999970人になります。

  ある病気あり ある病気なし
検査陽性 ① 80 ② 2999970 3000050
検査陰性 ③ 20 ④ 6999930 6999950
100 9999900 10000000

陽性予測力は(80/3000050)×100=0.00267%
陰性予測力は(6999930/6999950)×100=99.9997%
になります。陽性予測力はわずか0.00267%になり、ほとんど役に立たない検査になります。このように有病率が低い時は偽陽性の数が多くなるため、検査が陽性に出ても、真に病気である確率は低くなります。
 次に肺癌について考えます。今ある男性が肺癌の病理組織検査で肺癌と診断されたとします。臨床の場では、これだけで肺癌の確定診断ができたと考え、手術、抗癌剤、放射線のような治療が始まります。つまり病理組織検査で陽性⇒ 肺癌 の論理が通じると考えているのです。しかし病理組織検査にも癌とみなすのか、みなさないのか迷う症例は少なくなく、病理医により診断が異なったり、同じ病理医でも見る日によって診断が異なることがあります。それでも病理組織検査の感受性、特異性を高く考え、ともに99%としてみましょう。男性の肺癌の有病率は0.135%と報告されています。それで次のような表が成立します。

  肺癌 肺癌でない
病理組織検査陽性 ① 99 ② 740 839
病理組織検査陰性 ③ 1 ④ 73234 73235
100 73974 74074

陽性予測力は99/(99+740)×100=(99/839)×100=11.800%です。
陰性予測力は73234/(1+73234)×100=(73234/73235)×100=99.999%です。
 病理組織検査で陰性と出たなら、肺癌である人は73235人の中に1人しかいないのですから、肺癌でない確率はほぼ100%です。しかし病理組織検査で陽性であったとしても、肺癌である確率はわずかに11.8%です。10人の内9人近くが肺癌でないのです。これを文字通りとれば、病理組織検査で肺癌と診断されても、肺癌でない確率のほうがずっと高いのですから、何も治療せずにそのまま様子をみるという選択枝が成立します。
 このような結果になる原因の一つに肺癌の致死率の高さがあります。肺癌は致死率が高く、5年生存率は10%前後です。つまり5年以内に90%前後の人が死にます。有病率は生きている人がその病気をどのくらい持っているかの割合ですから、死んでしまえばその病気を持っている人に含まれません。肺癌はたくさんの人が死にますから、肺癌を持って生きている人は少なく、有病率は低くなるのです。致死率の高い病気ほど、その病気を持って生きている人は少なくなりますから、有病率は低くなります。 有病率から肺癌でない人の数を計算し、肺癌でない人の数から②の偽陽性の数を計算していますから、有病率が低くなれば、②の偽陽性の数が増えます。それで陽性予測力は低下します。
 もう一つの原因は有病率に一般人の有病率を使っていることです。肺の病理組織検査をするぐらいですから、CTで異常所見があるとか、気管支鏡で異常所見があるとかの異常所見があるはずです。そういう異常所見のある人の肺癌の有病率は一般人の肺癌の有病率よりはるかに高くなります。それで有病率は検査を受ける人の有病率を用いなければなりません。一般人の有病率を用いたのでは、正確な陽性予測力が出ません。
 肺の病理組織検査を受ける人の有病率を50%と仮定して上記の表を作り直してみます。

  肺癌 肺癌でない
病理組織検査陽性 ① 99 ② 1 100
病理組織検査陰性 ③ 1 ④ 99 100
100 100 200

陽性予測力は99/(99+1)×100=(99/100)×100=99.000%です。
陰性予測力は99/(1+99)×100=(99/100)×100=99.000%です。
陽性予測力は99%になるのですから、肺癌と考えて治療を開始するのは当然でしょう。
 30歳男性の虚血性心疾患の有病率は2%です。負荷心電図で0.5mVのST低下の虚血性心疾患に対する感受性、特異性はそれぞれ60% 90%です。この検査後オッズはいくらになるでしょうか。検査後オッズ=検査前オッズ×尤度比で計算してみます。検査前オッズは有病率が2%ですから、0.02/(1-0.02)です。尤度比は感受性/(1-特異性)=0.6/(1-0.9)になります。だから
[0.02/(1-0.02)]×[0.6/(1-0.9)]
=[0.02/0.98]×0.6/0.1
=[2/98]×6
=12/98
=6/49
=0.122
ですから、検査後オッズは0.122です。
オッズをr、ある事象の起こる確率をPとするとP=r/(1+r)でしたから、確率はr=0.122を代入して、0.122/(1+0.122)=0.109になります。この30歳の男性が虚血性心疾患である確率は約11%となるのです。ただしこれは検査前オッズを一般の30歳男性の有病率から求めています。もしこの男性が胸痛などの症状があれば、胸痛のある30歳の男性の有病率はもっと高くなります。だからこの男性が虚血性心疾患である確率はもっと高くなります。

参考文献
  1. eMedicine. Endocarditis https://www.emedicine.com/emerg/topic164.htm (2006/5 アクセス)
  2. 岡田 定  大蔵 暢 『内科レジデントの常識非常識』(2001) 三輪書店 p. 227
  3. 日本大学医学部公衆衛生学教室EBHC研究班 『EBMのための臨床疫学入門講座』 https://www.med.nihon-u.ac.jp/department/public_health/ebm/c-epi.html (2007/4/3アクセス)
  4. eMedicine. Lung Cancer, Non-Small Cell. https://www.emedicine.com/med/topic1333.htm (2007/04/04 アクセス)
  5. WIKIPEDIA. https://en.wikipedia.org/wiki/Positive_predictive_value (2010/01/17アクセス)
  6. Kishor Mistry, MD, PhD and Greg Cable, PhD. Meta-Analysis of Prostate-Specific Antigen and Digital Rectal Examination as Screening Tests for Prostate Carcinoma. The Journal of the American Board of Family Practice 16:95-101 (2003)

2010年1月29日更新
2011年9月7日更新

ホームにもどる