分享

R语言中的试验一致性检验分析 kappa检验和McNemar检验

 脑系科数据科学 2020-06-28

临床上的一致性检验指的在诊断试验中,研究者希望考察不同的研究方法在诊断结果上是否具有一致性。分为两种情况:一是评价待评价的诊断试验方法与金标准的一致性;二是评价两种化验方法对同一样本的化验结果的一致性或者两个医务工作者对同一组病人的诊断结论的一致性或者同一个医务工作者对同一组病人前后两次的观察做出的诊断的一致性等。

我们今天就来介绍下R语言如何实现临床化验结果的一致性与否的检验。在R语言中有两个函数都可以进行一致性检验,分别是kappa检验和McNemar检验。当然,两者也是有一定的区别的。如果检验的项目是多等级的分布那么选择kappa检验;如果是2个等级的检查那么选择McNemar检验。

我们来看下两个函数的参数情况:

1. kappa检验

Weight参数是函数的重点,如果有多个检查项目中有一个是为0的时候需要加权检验,其他时候一般都是非加权检验。

Ratings数据的结构一般是:所有样本在两个方法所得到的结果的一个表格数据。

方法1

方法2

等级

等级

等级

等级

等级

等级

我们利用irr中的数据做一下检验分析样例程序如下:

require(irr)

data(diagnoses)

dat=diagnoses[,c(1,2)]

kappa2(dat[,c(1,2)],'unweighted')

运行结果如下:

其中p-value<0.05代表具有一致性。Kappa的值的大小代表的一致性的程度,此值介于0到1之间,越大一致性程度越大。

2. McNemar检验

其中一个参数correct默认是true。我们通过理论频数进行判断。所谓理论频数指某H0假设计算各分类理论上的发生或者未发生计数值,记为T。

如果某个格子出现1≤T ≤5,则需作连续性校正。

我们利用官方提供的例子进行构建数据集

Performance <-

matrix(c(794, 86, 150, 570),

nrow = 2,

dimnames = list("1st Survey" = c("Approve","Disapprove"),

"2nd Survey" =c("Approve", "Disapprove")))

Performance

mcnemar.test(Performance)

数据集和结果如图:

以上就是一致性检验的实现过程,欢迎大家学习交流

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多