我正在尝试为多个评分者评分的ICC计算ICC。我的数据类似于:
student rater Q1 Q2 Q3
stA raA 4 3 1
stA raB 1 2 3
stA raC 2 2 2
stB raA 3 1 1
...
我想将数据格式化为:
raterA raterB raterC
stAQ1 4 1 2
stAQ2 3 2 2
stAQ3 1 3 2
stBQ1 3 1 1
...
我怎样才能做到这一点。我尝试使用aggregate
,dcast
但无法正常工作。谢谢!
这是dcast
data.frame的方法d
:
library(reshape2)
foo <- dcast(melt(d, variable.name='quarter'), student + quarter ~ rater)
foo
# student quarter raA raB raC
# 1 stA Q1 4 1 2
# 2 stA Q2 3 2 2
# 3 stA Q3 1 3 2
# 4 stB Q1 3 NA NA
# 5 stB Q2 1 NA NA
# 6 stB Q3 1 NA NA
如果您确实想要student
并variable
合并为行名(尽管我不建议这样做,因为这样会使学生和季度进一步汇总变得困难),那么:
row.names(foo) <- do.call(paste0, foo[, 1:2])
foo <- foo[, -c(1:2)]
foo
# raA raB raC
# stAQ1 4 1 2
# stAQ2 3 2 2
# stAQ3 1 3 2
# stBQ1 3 NA NA
# stBQ2 1 NA NA
# stBQ3 1 NA NA
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句