我有一个数据框,我想在其中为多个评估者在我的因素“形式”的多个级别上计算评估者协议 (Fleiss Kappa)。当我运行我的代码时,我收到以下错误:
**Error in factor(ratings[i, ], levels = lev) : subscript out of bounds**
这是它的外观示例:
form <- c("B01","B01","B01","B02","B02","B02","B03","B03","B03")
word<-c("arch","avenue","concrete","devotion","equations","moth","piling","relate","cover")
B01200<-c(1,2,3,NA,NA,NA,NA,NA,NA)
B01209<-c(3,2,1,NA,NA,NA,NA,NA,NA)
B01214<-c(1,3,2,NA,NA,NA,NA,NA,NA)
B01228<-c(NA,NA,NA,NA,NA,NA, 2,2,1)
B01235<-c(NA,NA,NA,NA,NA,NA ,1,2,3)
B01242<-c(NA,NA,NA,NA,NA,NA, 3,3,1)
B02215<-c(NA,NA,NA ,2,1,1,NA,NA,NA)
B02217<-c(NA,NA,NA,2,1,1,NA,NA,NA)
B02222<-c(NA,NA,NA, 3,1,3,NA,NA,NA)
x <- data.frame(form,word,B01200,B01209,B01214,B01228,B01235,B01242,B02215,B02217,B02222)
x$form <-factor(x$form)
by(x,x[,"form"], function(x) kappam.fleiss(x[,-c(1:2)], detail=TRUE))
当我使用 str(x) 查看底层结构时,我看不出我的“form”变量有什么问题。
这是它显示的内容:
'data.frame': 9 obs. of 11 variables:
$ form : Factor w/ 3 levels "B01","B02","B03": 1 1 1 2 2 2 3 3 3
$ word : Factor w/ 9 levels "architects","avenue",..: 1 2 3 5 6 7 8 9 4
$ B01200: num 1 2 3 NA NA NA NA NA NA
$ B01209: num 3 2 1 NA NA NA NA NA NA
$ B01214: num 1 3 2 NA NA NA NA NA NA
$ B01228: num NA NA NA NA NA NA 2 2 1
$ B01235: num NA NA NA NA NA NA 1 2 3
$ B01242: num NA NA NA NA NA NA 3 3 1
$ B02215: num NA NA NA 2 1 1 NA NA NA
$ B02217: num NA NA NA 2 1 1 NA NA NA
$ B02222: num NA NA NA 3 1 3 NA NA NA
我究竟做错了什么?
谢谢!