如何将data.frame转换为矩阵?

时间:2018-04-02 09:44:04

标签: r database

我有一个这样的数据框:三个列,物种,物种发出的化合物,以及1中的status表示物种中存在的化合物。在这种格式中,没有0,这表示"缺席"。

enter image description here

现在,我想将数据框转换为这样的矩阵:第一列包含species,其余列包含compounds,并使用1和{{1} }表示"现在"并且"缺席"分别。

enter image description here

是否有R代码可以做到这一点?如您所见,原始数据框中有很多行。提前谢谢!

1 个答案:

答案 0 :(得分:2)

我们可以使用dcast

library(reshape2)
dcast(data, species ~compounda, value.var = 'status', fill = 0)

如果我们需要matrix使用dcast改为acast