样本data.frame
:
df <- structure(list(region = structure(c(1L, 1L, 1L, 1L, 1L, 2L, 2L,
2L, 2L, 2L, 2L), .Label = c("a", "b", "c", "d"), class = "factor"),
result = c(0L, 1L, 1L, 0L, 0L, 1L, 0L, 0L, 0L, 1L, 0L), weight = c(0.126,
0.5, 0.8, 1.5, 5.3, 2.2, 3.2, 1.1, 0.1, 1.3, 2.5)), .Names = c("region",
"result", "weight"), row.names = c(NA, 11L), class = "data.frame")
df$region <- factor(df$region)
result <- xtabs(weight ~ region + result, data=df)
result
我如何改变xtab
的顺序(我不想切换之前询问过的轴)?例如,确保1始终是第一个result
或b
是第一个区域。
如果有人有任何想法,我将不胜感激。我正在对这些数据进行一些后续统计,我需要确保我的价值观是正确的。
答案 0 :(得分:3)
使用relevel
尝试以下操作,它会重置因子的基本级别:
df$region <- relevel(df$region, "b")
xtabs(weight ~ region + result, data=df)
如果您想订购多个级别,最好的方法是在首次使用factor
时初步设置这些:
df$region2 <- df$region <- factor(df$region, levels=c("b", "c", "a"))
或您想要的任何顺序。