删除具有NA值的行,并在另一年删除这些观察值

Tde*_*eus 2 r dplyr

我觉得找到合适的词语对我正在努力做的事情有点困难.

说我有这个数据帧:

library(dplyr)

# A tibble: 74 x 3
       country  year conf_perc
         <chr> <dbl>     <dbl>
 1      Canada  2017        77
 2      France  2017        45
 3     Germany  2017        60
 4      Greece  2017        33
 5     Hungary  2017        67
 6       Italy  2017        38
 7      Canada  2009        88
 8      France  2009        91
 9     Germany  2009        93
10      Greece  2009        NA
11     Hungary  2009        NA
12       Italy  2009        NA
Run Code Online (Sandbox Code Playgroud)

现在我想要删除NA2009年具有值的行,但我想在2017年删除这些国家/地区的行.我想得到以下结果:

# A tibble: 74 x 3
       country  year conf_perc
         <chr> <dbl>     <dbl>
 1      Canada  2017        77
 2      France  2017        45
 3     Germany  2017        60
 4      Canada  2009        88
 5      France  2009        91
 6     Germany  2009        93
Run Code Online (Sandbox Code Playgroud)

akr*_*run 5

any按'国家'分组后我们可以做

library(dplyr)
df1 %>% 
  group_by(country) %>% 
  filter(!any(is.na(conf_perc)))
# A tibble: 6 x 3
# Groups:   country [3]
#  country  year conf_perc
#    <chr> <int>     <int>
#1  Canada  2017        77
#2  France  2017        45
#3 Germany  2017        60
#4  Canada  2009        88
#5  France  2009        91
#6 Germany  2009        93
Run Code Online (Sandbox Code Playgroud)