通过MCP连接 →

输入计算

数学公式

Show calculation steps (4)
  1. Specificity (True Negative Rate)

    Specificity (True Negative Rate): 诊断试验准确度计算器

    Specificity = True Negatives / Total with disease absent

  2. Positive Predictive Value (PPV)

    Positive Predictive Value (PPV): 诊断试验准确度计算器

    PPV = True Positives / All who test positive; FP = Disease absent - test negative

  3. Negative Predictive Value (NPV)

    Negative Predictive Value (NPV): 诊断试验准确度计算器

    NPV = True Negatives / All who test negative; FN = Disease present - test positive

  4. Prevalence

    Prevalence: 诊断试验准确度计算器

    Prevalence = Total with disease / Total sample

广告

结果

灵敏度(真阳性率)
0.9
= 90%
指标 比值 百分比
特异度(真阴性率) 0.95 95%
假阴性率(FNR) 0.1 10%
假阳性率(FPR) 0.05 5%
阳性预测值(PPV) 0.6429 64.29%
阴性预测值(NPV) 0.9896 98.96%
患病率 0.0909 9.09%
患病 未患病
检测阳性 90 (TP) 50 (FP)
检测阴性 10 (FN) 950 (TN)

这个计算器能做什么

诊断试验准确度计算器可将一个 2×2 混淆矩阵换算成流行病学与生物统计学中常用的各项指标:灵敏度(Sensitivity)、特异度(Specificity)、假阴性率(FNR)、假阳性率(FPR)、阳性预测值(PPV)、阴性预测值(NPV)以及患病率(Prevalence)。它是一款通用工具——背后的数学原理在全球任何地区都完全一致,不涉及任何特定国家的规定。

2x2 confusion matrix showing disease status versus test result with cells a, b, c, d
The 2x2 diagnostic confusion matrix: true positives (a), false positives (b), false negatives (c) and true negatives (d).

使用方法

请输入四个人数:实际患病的总人数、其中检测呈阳性的人数、未患病的总人数,以及其中检测呈阴性的人数。计算器会据此推导出矩阵的四个单元格:

\(a\)(真阳性)= 患病且检测呈阳性的人数;\(c\)(假阴性)= 患病总人数减去 \(a\);\(d\)(真阴性)= 未患病且检测呈阴性的人数;\(b\)(假阳性)= 未患病总人数减去 \(d\)。

公式详解

灵敏度,衡量该试验检出疾病的能力:

$$\text{灵敏度} = \frac{a}{a + c}$$

特异度,衡量该试验在健康人群中排除疾病的能力:

$$\text{特异度} = \frac{d}{b + d}$$

$$\text{FNR} = \frac{c}{a + c} = 1 - \text{灵敏度}$$$$\text{FPR} = \frac{b}{b + d} = 1 - \text{特异度}$$

PPV,表示在结果为阳性的前提下,你真正患病的概率:

$$\text{PPV} = \frac{a}{a + b}$$

NPV,表示在结果为阴性的前提下,你真正健康的概率:

$$\text{NPV} = \frac{d}{c + d}$$

患病率,即样本中患病者所占的比例,它对 PPV 和 NPV 有显著影响:

$$\text{患病率} = \frac{a + c}{a + b + c + d}$$
Advertisement
Diagram showing sensitivity and specificity as proportions within the confusion matrix columns
Sensitivity uses the diseased column (a/(a+c)); specificity uses the healthy column (d/(b+d)).

实例演算

假设有 100 名患病者(其中 90 人检测呈阳性)和 1000 名未患病者(其中 950 人检测呈阴性):\(a = 90\),\(c = 10\),\(d = 950\),\(b = 50\)。

$$\text{灵敏度} = \frac{90}{100} = 0.9000 \ (90\%)$$$$\text{特异度} = \frac{950}{1000} = 0.9500 \ (95\%)$$$$\text{FNR} = 0.1000$$$$\text{FPR} = 0.0500$$$$\text{PPV} = \frac{90}{140} = 0.6429 \ (64.29\%)$$$$\text{NPV} = \frac{950}{960} = 0.9896 \ (98.96\%)$$$$\text{患病率} = \frac{100}{1100} = 0.0909 \ (9.09\%)$$

常见问题

为什么这里的 PPV 远低于灵敏度? 因为该疾病很罕见(患病率低),即便假阳性人数不多,也会超过真阳性人数,从而把 PPV 拉低。PPV 和 NPV 始终取决于患病率。

FNR 和 FPR 有什么区别? FNR 是试验漏诊的患病者所占的比例;FPR 是试验把健康人误判为阳性所占的比例。

如果某一类别为空怎么办? 如果不存在患病者、不存在未患病者,或没有任何阳性结果、没有任何阴性结果,则对应的比值在数学上无定义,将留空显示。

最后更新: