如何将2x2应急表转换为长格式的数据框架?我试过这个:
library(reshape2)
Table <- matrix(c(7,67,19,71), 2, 2, byrow=TRUE)
rownames(Table) <- c('Drug', 'No_Drug')
colnames(Table) <- c('Comp', 'No_Comp')
melt(Table)我得到的不是一个由164个行组成的数据框架,它是由药物和No_Drug分类的
Var1 Var2 value
1 Drug Comp 7
2 No_Drug Comp 19
3 Drug No_Comp 67
4 No_Drug No_Comp 71发布于 2015-11-07 15:01:36
据我所知,您正在尝试将您的4x3熔融data.frame转换为164x2 data.frame。您可以从expandRows()包中尝试splitstackshape:
扩展(复制) data.frame或data.table的行,或者通过固定的数字、指定的向量或源data.frame或data.table中某一列中包含的值展开。
在您的例子中,只需:
library(splitstackshape)
m <- melt(Table)
expandRows(m, "value") 备注:--这是一个方便的包装器,它围绕着基R:
out <- m[rep(sequence(nrow(m)), m[["value"]]), ]
out[["value"]] <- NULLhttps://stackoverflow.com/questions/33584057
复制相似问题