我有这个数据框:
> data
Date Treatment Plate.1 Plate.2 Plate.3 Plate.4 Plate.5 Plate.6 Plate.7 Plate.8
1 2014-10-15 2 1 0 2 5 2 0 11 6
2 2014-11-12 2 3 2 3 0 0 3 2 1
3 2014-12-11 2 1 0 1 1 0 1 1 0
4 2015-02-11 2 0 0 0 0 0 0 0 0
5 2015-03-09 2 0 0 0 0 0 0 0 0
我一直在尝试将其重组为这种格式:
> manually.created.dataframe
Date Treatment Abundance
1 2014-10-15 2 1
2014-10-15 2 0
2014-10-15 2 2
2014-10-15 2 5
2014-10-15 2 2
2014-10-15 2 0
2014-10-15 2 11
2014-10-15 2 3
2014-11-12 2 2
2014-11-12 2 3
2014-11-12 2 0
etc.
我试图实现转置功能无济于事。任何帮助或建议将不胜感激。谢谢!
编辑:对不起,我应该更清楚了。丰富是Plate.1,Plate的值。 2,板块。 3等每个日期值。我想将1-8号板放入一个标题为" Abundance"的垂直柱中,复制相邻垂直柱中的处理值和日期。
答案 0 :(得分:2)
您可以使用melt
包中的reshape2
功能:
melt(data, id.vars = c("Date", "Treatment"), value.name = "Abundance")
您将在输出数据集中获得一个名为variable
的其他列,其中包含Plate名称
答案 1 :(得分:1)
试试这个:
library(reshape2)
x = melt(data,id = c("Date","Treatment"))
这包含的列数多于您在所需解决方案中的列数,但我认为您可能会想要这些列,因为它会告诉您值来自哪个板。
但如果没有,你可以这样做:
x = x[-3]