2017-06-12 44 views
2

我有一個很大的數據幀(≈2M個觀察值),它有很多重複項。我將刪除這些重複項,但我需要將非重複值保留爲另一個不缺失的值(NA)。它可以是任何可以想象的值,只要有一個非NA。例如:Group By Non-Missing Dplyr

data <- airquality 
data[4:10,3] <- rep(NA,7) 
data[1:5,4] <- NA 

library(dplyr) 

new.data <- data %>% 
    group_by(Ozone) %>% 
    filter(Wind==????)) 

在這裏您可以看到我不確定按「風==」註釋過濾的內容。只要Wind列中有任何值(數字或名義),我想保留這些唯一值,同時刪除非缺失值的條件值。

謝謝!

+3

你想'數據%>%GROUP_BY(臭氧)%>%的過濾器(!複製(風)!is.na(風))' – akrun

+0

感謝您幫幫我 – Starbucks

回答

2

我們可以做

data %>% 
    group_by(Ozone) %>% 
    filter(!duplicated(Wind) & !is.na(Wind))