我想比较β物种的丰富度,为此,我想将当前数据转换为存在/不存在二进制代码,以便在R betapart程序中使用。
我有两个柱子 - 第一个柱子位于物种被采样的位置,第二个柱子是观察到所有鱼类物种的柱子(在某些情况下是18个物种)。以下是我正在使用的示例:
#Site Species
#0001-HIL yellow bullhead, brown bullhead, goldfish
#0001-ETC yellow bullhead, goldfish, emerald shiner
#0001-BAP brown bullhead, emerald shiner
我想使用适当的R代码来获取上面的data.frame并将其转换为矩阵:
#yellow bullhead___brown bullhead___goldfish___emerald shiner
#0001-HIL 1 1 1 0
#0001-ETC 1 0 1 1
#0001-BAP 0 1 0 1
(原谅所有#的使用,否则无法创建表。)
我知道重塑,涂抹,融化等的使用,但我真的不知道使用哪个。我有超过10,000行数据。
非常感谢任何帮助。
答案 0 :(得分:-1)
我们可以在split
'物种列
library(qdapTools)
d1 <- mtabulate(strsplit(as.character(df1$Species), ","))
row.names(d1) <- df1$Site
d1
# brown bullhead emerald shiner goldfish brown bullhead
#0001-HIL 1 0 1 0
#0001-ETC 0 1 1 0
#0001-BAP 0 1 0 1
# yellow bullhead
#0001-HIL 1
#0001-ETC 1
#0001-BAP 0