Stata 是康格';s卡帕在斯塔塔有售吗?

Stata 是康格';s卡帕在斯塔塔有售吗?,stata,Stata,康格(1980)提出的方案在斯塔塔可用吗?我不知道Stata是否有Conger's kappa for multiple raters,但是可以通过irr软件包,使用kappam.fleiss函数并指定exact选项,在R中获得它。有关R中的irr包的信息,请参阅 在R中安装并加载irr包后,您可以使用以下代码查看演示数据集和Conger的kappa计算 data(diagnoses) print(diagnoses) kappam.fleiss(diagnoses, exact=TRUE)

康格(1980)提出的方案在斯塔塔可用吗?我不知道Stata是否有Conger's kappa for multiple raters,但是可以通过
irr
软件包,使用
kappam.fleiss
函数并指定
exact
选项,在R中获得它。有关R中的
irr
包的信息,请参阅

在R中安装并加载
irr
包后,您可以使用以下代码查看演示数据集和Conger的kappa计算

data(diagnoses)
print(diagnoses)
kappam.fleiss(diagnoses, exact=TRUE)

我希望这里的其他人能够按照您的要求提供Stata解决方案,但如果您在Stata中找不到,这至少可以提供一个解决方案。

对于Dimitry下面的评论,我相信Stata的本机
kappa
命令适用于两个唯一的评分员或两个以上的非唯一评分员


原海报可能还想考虑StATA中的<代码> ICC < /代码>命令,它允许多个唯一的估计器。

< P>由于没有人用STATA解决方案,我开发了一些代码来计算康格的Kappa,使用Gwet提供的公式,K. L.(2012)。马里兰州盖瑟斯堡:高级分析有限责任公司《评级机构间可靠性手册》(第三版),特别见第34-35页

毫无疑问,我的代码没有其他人编写的那么高效,我欢迎其他人对代码或程序格式进行任何改进

cap prog drop congerkappa
prog def congerkappa
  * This program has only been tested with Stata 11.2, 12.1, and 13.0.
  preserve
  * Number of judges
  scalar judgesnum = _N 
  * Subject IDs
  quietly ds
  local vlist `r(varlist)'
  local removeit = word("`vlist'",1)
  local targets: list vlist - removeit  
  * Sums of ratings by each judge
  egen judgesum = rowtotal(`targets')  
  * Sum of each target's ratings
  foreach i in `targets' {
    quietly summarize `i', meanonly
    scalar mean`i' = r(mean)
    }  
  * % each target rating of all target ratings  
  foreach i in `targets' {
    gen `i'2 = `i'/judgesum
    }  
  * Variance of each target's % ratings  
  foreach i in `targets' {
    quietly summarize `i'2 
    scalar s2`i'2 = r(Var)
    }  
  * Mean variance of each target's % ratings
  foreach i in `targets' {
    quietly summarize `i'2, meanonly
    scalar mean`i'2 = r(mean)
    }  
  * Square of mean of each target's % ratings  
  foreach i in `targets' {
    scalar mean`i'2sq = mean`i'2^2
    }    
  * Sum of variances of each target's % ratings
  scalar sumvar = 0
  foreach i in `targets' {
    scalar sumvar = sumvar + s2`i'2
    }    
  * Sum of means of each target's % ratings
  scalar summeans = 0
  foreach i in `targets' {
    scalar summeans = summeans + mean`i'2
    }   
  * Sum of meansquares of each target's % ratings
  scalar summeansqs = 0
  foreach i in `targets' {
    scalar summeansqs = summeansqs + mean`i'2sq
    } 
  * Conger's kappa
  scalar conkappa = summeansqs -(sumvar/judgesnum)
  di _n "Conger's kappa = "  conkappa
  restore
  end
程序所需的数据结构如下所示。变量名不是固定的,但judge/rater变量必须位于数据集中的第一个位置。数据集不应包括除法官/评分员和目标/评分之外的任何变量

 Judge    S1   S2   S3   S4   S5   S6 
 Rater1    2    4    2    1    1    4 
 Rater2    2    3    2    2    2    3 
 Rater3    2    5    3    3    3    5 
 Rater4    3    3    2    3    2    3 
如果您想对测试数据集运行此操作,可以使用StataCorp的Judgets数据集,并对其进行重塑,如图所示

use http://www.stata-press.com/data/r12/judges.dta, clear
sort judge
list, sepby(judge)
reshape wide rating, i(judge) j(target)
rename rating* S*
list, noobs

* Run congerkappa program on demo data set in memory
congerkappa

我仅针对Gwet(第35页)表2.16中的数据对该代码进行了一次验证测试,并复制了Gwet在第35页计算的Conger's kappa=.23343。34在依赖之前,请使用已知的Conger's kappas在其他数据上测试此代码。

这是一个老问题,但如果有人仍在寻找——SSC包
kappaetc
现在计算,以及您可能需要的所有其他评分员间统计。

如果我使用icc,是否需要将数据转换为stata中的变量?此外,ICC是参数化的,因此正态分布是可取的。。我说的对吗?本机的
kappa
命令不处理多个评级者的情况吗?存在问题,请参阅链接。