我将获得一个一维数据框作为输入:
A,1,B,2,C,3,D,4
我需要将其转换为如下的二维数据框:
A,1
B,2
C,3
D,4
我该怎么做?因为数据框中包含非数字值,我无法使用matrix(...)
。
【编辑】根据要求提供数据的dput
:
structure(list(V1 = structure(1L, .Label = "A", class = "factor"),
V2 = 1, V3 = structure(1L, .Label = "B", class = "factor"),
V4 = 2, V5 = structure(1L, .Label = "C", class = "factor"),
V6 = 3, V7 = structure(1L, .Label = "D", class = "factor"),
V8 = 4), .Names = c("V1", "V2", "V3", "V4", "V5", "V6",
"V7", "V8"), class = "data.frame", row.names = c(NA, -1L))
data.frame(matrix(t(d), ncol=2, byrow=TRUE))
这个命令可以接近你的目标 - 你需要将第二列转换为数值型数据(我猜是这样的)。 - user20650