0%

诊断试验的一致性检验-Kappa

试验中如有金标准,在与金标准比较时,应报告灵敏性和特异性、阳性似然比和阴性似然 比、阳性预测值和阴性预测值、其双侧95%置信区间。与非金标准比较时,应报告阳性一致性 百分比、阴性一致性百分比、总体一致性百分比,仅仅使用“敏感性”和“特异性”描述新试验与 非金标准的比较结果是不恰当的

而对于一致性的计算,使用Kappa检验的方法

Kappa检验由Cohen于1960年提出,因此又称为Cohen's Kappa

Cohen's Kappa统计量一种分类变量的定性指标,其可以评估N个受试者在k个类别上的两个评分者之间一致性;也可用于计算在kappa特定置信区间下所需的样本量

一般情况我们认为:Kappa<0,一致性强度极差(实际情况下发生可能性较低,Poor);0-0.20,微弱(Slight);0.21-0.40,弱(Fair);0.41-0.60,中度(Moderate);0.61-0.80,高度(Substantial);0.81-1.00,极强(Almost perfect)。

以这个配对设计的2X2列联表为例:

show

则kappa公式如下:

Kappa_1

其中实际一致率P0

Kappa_2

预期一致率Pe

Kappa_3

从上述公式可看出Kappa主要看的是实际一致率和预期一致率之间的关系。。。

比如当a = 56b = 2c = 3d = 45时,根据上述公式计算可得:

a <- 56
b <- 2
c <- 3
d <- 45
n <- a + b + c + d

p0 <- (a + d) / n
pe <- ((a + b) * (a + c) + (c + d) * (b + d)) / n^
kappa <- (p0 - pe) / (1 - pe)
> kappa
[1] 0.904642

如果用R的话,可用vcd::Kappa来计算Kappa系数

K <- vcd::Kappa(matrix(c(56, 2, 3, 45), byrow = T, nrow = 2))
K

当遇到有序分类资料(等级资料)时,则计算加权kappa系数,而即当对于四格表来说(无序分类资料),简单kappa系数与加权的kappa系数是相等的;同样加权系数可用vcd::Kappa来计算

Confidence Intervals for Kappa

计算kappa的置信区间,一般假设其符合标准正态分布,因此需要知道其标准误SE,而SE可通过SD计算,因此SD的公式如下:

Kappa_4

由此计算SE:

Kappa_5

最后计算标准正态分布的置信区间即可,代码如下所示(假如是95%双尾置信区间):

sd <- sqrt(p0 * (1 - p0) / (1 - pe)^2)
se <- sd / sqrt(n)
z_alpha <- qnorm(0.025, lower.tail = F)
CI <- c(kappa - z_alpha * se, kappa + z_alpha * se)
CI

若使用R包函数的话,则是:

CI <- confint(K)
CI

Kappa Test for Agreement

kappa的一致性假设检验可调用的R包函数比较多,如:vcd::Kappa(),irr:kappa2()以及fmsb::Kappa.test()等函数

但是以上函数的零假设均为kappa0等于0,即比较的是kappa和0之间是否有显著性差异,若我们想看下计算得到的kappa与0.7之间的差别,则可以考虑用以下公式计算Z统计量,然后再计算P值(其默认假设符合正态分布)

Kappa_6

转化为代码则是(假设95%双尾):

kappa0 <- 0.7
z <- (kappa - kappa0) / se
pvalue <- 2 * pnorm(abs(z), lower.tail = F)

一致性检验除了Kappa系数外,还有Kendall'Tb系数,Mcnemar稀释等等,除了上述提到的2X2表外,还有多categorical-variables的kappa,都是值得学习下的

参考资料:

Mcnemar检验,Kappa检验
Confidence Intervals for Kappa
Kappa_Test_for_Agreement_Between_Two_Raters
关于定性指标的一致性评价
K is for Cohen's Kappa
Agreement of Categorical Measurements
Cohen’s Kappa in R: For Two Categorical Variables

本文出自于http://www.bioinfo-scrounger.com转载请注明出处