5

考虑以下代码。

library (reshape2)
x = rnorm (20)
y = x + rnorm (rnorm (20, sd = .01))

dfr <- data.frame (x, y)
mlt <- melt (dfr)

当我尝试用 dcast 反转这个操作时,

dcast (mlt, value ~ variable)

我得到了一个包含三列的数据框(例如,不适合散点图)。如何使用 dcast 重新制定原始数据帧?

4

1 回答 1

5

R 怎么知道在熔化之前存在的排序?即第一行x与第一行匹配的概念y

如果您添加一个索引列(因为 R 会抱怨重复的 row.names),您可以简单地执行此操作:

dfr$idx <- seq_along(dfr$x)   
mlt <- melt(dfr, id.var='idx')
dcast(mlt, idx ~ variable, value.var='value')
于 2013-04-09T14:55:52.700 回答