使用irr软件包引导Fleiss卡伯的置信区间

时间:2018-06-21 06:22:09

标签: r

我使用kappam.fleiss()包中的irr函数,为多个评估者之间的协议估计了Fleiss的kappa。

现在,我想使用引导程序来估计一致性和置信区间。

有人可以举个例子吗?

数据

R1   R2   R3   R4
1    1    1    1
1    1    0    1
0    0    0    0
2    1    2    2 
n    n    n    n

代码:

#load libraries
library("irr")
library("boot")

# estimate fleiss' kappa
kappam.fleiss(df)

1 个答案:

答案 0 :(得分:0)

您需要定义一个函数来提取相关性统计信息。对于kappam.fleiss,以下代码将执行基本的非参数引导。我以diagnoses包中的irr为例。

library("irr")
library("boot")
bt <- boot(diagnoses, function(x, idx) {kappam.fleiss(x[idx,])$value}, R=1000)

用于计算统计信息的函数带有两个参数:作为引导程序样本一部分的数据和行的索引。然后,我们将kappa值提取到1000倍。

结果将为您提供以下内容

> bt

ORDINARY NONPARAMETRIC BOOTSTRAP


Call:
boot(data = diagnoses, statistic = function(x, idx) {
    kappam.fleiss(x[idx, ])$value
}, R = 1000)


Bootstrap Statistics :
     original      bias    std. error
t1* 0.4302445 -0.01013167  0.05516197

现在,您可以使用boot包中的某些功能来获得改进的CI。 boot.ci函数计算置信区间

> boot.ci(bt)
BOOTSTRAP CONFIDENCE INTERVAL CALCULATIONS
Based on 1000 bootstrap replicates

CALL : 
boot.ci(boot.out = bt)

Intervals : 
Level      Normal              Basic         
95%   ( 0.3323,  0.5485 )   ( 0.3396,  0.5463 )  

Level     Percentile            BCa          
95%   ( 0.3142,  0.5209 )   ( 0.3336,  0.5433 )  
Calculations and Intervals on Original Scale
Some BCa intervals may be unstable
Warning message:
In boot.ci(bt) : bootstrap variances needed for studentized intervals