Я хочу использовать суммирование dplyr для суммирования подсчетов по группам.В частности, я хочу удалить значения NA, если не все суммированные значения являются NA, но если все значения суммированы как NA, я хочу отобразить NA.Например:
name <- c("jack", "jack", "mary", "mary", "ellen", "ellen")
number <- c(1,2,1,NA,NA,NA)
df <- data.frame(name,number)
В этом случае я хочу следующий результат:
- Джек = 3
- Мэри = 1
- Эллен =NA
Однако, если я установлю na.rm = F
:
df %>% group_by(name) %>% summarise(number = sum(number, na.rm = F))
Результат будет:
- Джек = 3
- Мэри= NA
- Эллен = NA
И если я установлю na.rm = T
:
df %>% group_by(name) %>% summarise(number = sum(number, na.rm = T))
В результате получится
- Джек= 3
- Мэри = 1
- Эллен = 0
Как я могу решить эту проблему, чтобы случаи с числами и NA получали число в качестве вывода, нослучаи с только NA получают NA в качестве вывода.