我有3个评分者对60个案例的评分。这些是按文档组织的列表 - 第一个元素是指第一个文档的评级,第二个文档的第二个,依此类推:
rater1 = [-8,-7,8,6,2,-5,...]
rater2 = [-3,-5,3,3,2,-2,...]
rater3 = [-4,-2,1,0,0,-2,...]
Cohen的Kappa在某处有python实现吗?我在numpy或scipy中找不到任何东西,而且stackoverflow上没有任何东西,但也许我错过了它?这是一个非常常见的统计数据,所以我很惊讶我找不到像Python这样的语言。
答案 0 :(得分:12)
您也可以使用nltk.metrics.agreement。以下是相同
的代码段from nltk import agreement
rater1 = [1,1,1]
rater2 = [1,1,0]
rater3 = [0,1,1]
taskdata=[[0,str(i),str(rater1[i])] for i in range(0,len(rater1))]+[[1,str(i),str(rater2[i])] for i in range(0,len(rater2))]+[[2,str(i),str(rater3[i])] for i in range(0,len(rater3))]
ratingtask = agreement.AnnotationTask(data=taskdata)
print("kappa " +str(ratingtask.kappa()))
print("fleiss " + str(ratingtask.multi_kappa()))
print("alpha " +str(ratingtask.alpha()))
print("scotts " + str(ratingtask.pi()))
答案 1 :(得分:7)
Cohen's kappa是在scikit-learn 0.17中引入的:
sklearn.metrics.cohen_kappa_score(y1, y2, labels=None, weights=None)
from sklearn.metrics import cohen_kappa_score
labeler1 = [2, 0, 2, 2, 0, 1]
labeler2 = [0, 0, 2, 2, 0, 2]
cohen_kappa_score(labeler1, labeler2)
提醒一下,来自{1}:
参考文献:
答案 2 :(得分:3)
旧问题,但参考Kappa可以在skll metrics package找到。
http://skll.readthedocs.org/en/latest/api/metrics.html#skll.metrics.kappa
答案 3 :(得分:2)
我还没有发现它包含在任何主要的库中,但是如果你在google周围,你可以在各种“cookbook”类型的网站上找到实现。以下是包含Cohen's kappa,Fleiss' kappa和Krippendorff's alpha
实施的网页答案 4 :(得分:0)
statsmodels是一个python库,其中包含Cohen的Kappa和其他评估者之间的协议指标(在statsmodels.stats.inter_rater中)。