如果 R 中任何成员包含 NA,则删除组

SiD*_*SiD 2 r dplyr

如果其值之一是 ,如何删除整个组NA。对于 ex-删除categoryB 因为它包含NA.

library(dplyr)

tbl = tibble(category = c("A", "A", "B", "B"),
             values = c(2, 3, 1, NA))
Run Code Online (Sandbox Code Playgroud)

akr*_*run 5

我们可以filter在按“类别”分组后使用

library(dplyr)
tbl %>% 
    group_by(category) %>% 
    filter(!any(is.na(values))) %>%
    ungroup
Run Code Online (Sandbox Code Playgroud)

-输出

# A tibble: 2 x 2
  category values
  <chr>     <dbl>
1 A             2
2 A             3
Run Code Online (Sandbox Code Playgroud)