我有一个物种名称和Habitat_id
的数据框。我想根据Habitat_id
创建新列,并根据Habitat_id
指定物种。例如,我的数据框如下所示:
Species_Name Habitat_id
abc cde 85
acc bcc 26
acd dcc 138
acp acp 35
acp acp 37
acp acp 38
bpp cpp 26
qpp qlp 26
qpp qlp 22
qpp qlp 24
我希望新数据框看起来像:
Species_Name 22 24 26 35 37 38 85 138
abc cde 0 0 0 0 0 0 1 0
acc bcc 0 0 1 0 0 0 0 0
acd dcc 0 0 0 0 0 0 0 1
acp acp 0 0 0 1 1 1 0 0
bpp cpp 0 0 1 0 0 0 0 0
qpp qlp 1 1 1 0 0 0 0 0
答案 0 :(得分:2)
我们可以使用table
df2 <- as.data.frame.matrix(table(df1))
df2 <- cbind(Species_Name = row.names(df2), df2)
row.names(df2) <- NULL