示例
data <- data.frame("VPN" = c(1,2,3,4), "dV.bl" = c(0,0,1,2), "dV.post" = c(2,2,1,2))将数据转换为长格式:
data.long <- data.frame("VPN" = rep(data$VPN, times=2), "dV" = c(data$dV.bl, data$dV.post), "TP"=rep(c(0,1), each=4))
data.long <- data.long[order(data.long$VPN), ],我的问题是:如何从oder中的数据中获得一个3x3应急表,以便能够在Stuart统计数据中使用它?
3x3表应该是这样的:
TP2
0 1 2
________________
TP1 0 |0 0 2
1 |0 1 0
2 |0 0 1但是,如果我使用的是表(data.long$dV,data.long$TP),R将返回一个2x3表:
table(data.long$dV,data.long$TP)
TP1 TP2
0 2 0
1 1 1
2 1 3我怎么得到一张3x3桌?谢谢你的帮助!
发布于 2017-08-07 22:24:17
解决问题的方法是:
data <- data.frame("VPN" = c(1,2,3,4),
"dV.bl" = c(0,0,1,2),
"dV.post" = c(2,2,1,2))
table(factor(data$dV.bl, levels=0:2), factor(data$dV.post, levels=0:2))
# 0 1 2
# 0 0 0 2
# 1 0 1 0
# 2 0 0 1https://stackoverflow.com/questions/45555801
复制相似问题