2016-04-08 23 views
0

我在R中有一個數據集,它有4列:幼龜的大小,巢的數量,年,海灘。根據列的長度刪除R中的行

我想創建一個新的數據框,不包括我測量少於10個幼體的巢。因此,我需要根據列大小的長度排除行,以獲得「Year」,「Beach」和「Nest」的獨特組合。 謝謝。

回答

2

我們可以使用data.table。將'data.frame'轉換爲'data.table'(setDT(df1)),按'Year','Beach','Nest'分組,我們將「Hatchling_Number」元素的length大於或等於10

library(data.table) 
setDT(df1)[, if(uniqueN(Hatchling_Number)>=10) .SD, by = .(Year, Beach, Nest)] 

或萬一有每組沒有重複「Hatchling_Number」,我們可以使用.N >=10的子集。

setDT(df1)[, if(.N >=10) .SD, by = .(Year, Beach, Nest)]