2016-04-08 22 views
0

4 sütun içeren bir veri kümem var: kaplumbağa yavrularının boyutu, yuva sayısı, yıl, plaj.Bir satırın uzunluğuna göre R satırlarını silme

10 hatch'tan daha azını ölçtüğüm yuvalar hariç, yeni bir veri çerçevesi oluşturmak istiyorum. Bu nedenle, "Yıl", "Plaj" ve "Yuva" nın benzersiz kombinasyonları için sütun Boyutunun uzunluğuna dayalı satırları hariç tutmam gerekiyor. Teşekkür ederiz.

cevap

2

data.table'u kullanabiliriz. 'Data.frame' öğesini 'Year', 'Beach', 'Nest' gruplarına ayrılmış 'data.table' (setDT(df1)) 'a dönüştürün, "Hatchling_Number" öğesinin unique öğesinin length öğesinin büyük veya eşit olduğu grupları ayırırız. her grup için hiçbir yinelenen "Hatchling_Number" vardır 10

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

veya durumda biz subsetting için .N >=10 kullanabilirsiniz.

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