2017-01-04 66 views
1

我有一個物種名稱和Habitat_id的數據框。我想根據Habitat_id製作新列,並根據其Habitat_id分配物種。例如,我的數據框看起來象下面這樣:根據r中的其他列創建新列

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

爲此,你可能需要'爲.data.frame.matrix(table(df1))' – akrun

+1

太好了。有用。謝謝。 –

回答

1

我們可以table

df2 <- as.data.frame.matrix(table(df1)) 
df2 <- cbind(Species_Name = row.names(df2), df2) 
row.names(df2) <- NULL 
相關問題