我正在读取数字数据矩阵,并希望使用概述的here方法来翻转列和行。我这样做是因为,如果遵循id /以row / column度量的data.frame约定(我恰好以相反的方式写入数据),那么一切似乎会变得更加容易。我们有一个data.txt
文件,
1 2 3 4 5
5 3 2 4 6
2 3 4 5 21
20 2 5 3 2
我们可以阅读
library(data.table)
options(as.data.table=TRUE)
data <- fread("data.txt", header=FALSE)
然后,如果我想使用melt
和dcast
函数,我需要能够指定默认情况下data.table似乎不存在的列名(并分配一个值导致错误):
dimnames(data)
[[1]]
NULL
[[2]]
[1] "V1" "V2" "V3" "V4" "V5"
在上述情况下,如何在以下表达式中将值与col0
关联?
dcast(melt(data, id.vars = "col0"), variable ~ col0)
我可以找到的所有示例都涉及混合类型的数据表以及预定义的列名和行名,甚至是手工制作的数据表(如链接线程中一样)。到现在为止,我一直在处理数组和矩阵,因为我只处理普通数据。但是,这里似乎并没有太多的支持或便利,因此已切换到data.frames和table(一个噩梦!)。