即使使用rm.na = TRUE也会导致summarise()问题的NA值

时间:2019-03-06 15:28:19

标签: r dplyr

我正在尝试取一些带有NA值的数据的平均值,我希望忽略NA值。可重现的示例是:

     country      gdp
1    Austria    25.17
2 Azerbaijan       NA
3 Bangladesh    27.79
4    Belarus       NA
testdf2 <- data.frame(stringsAsFactors=FALSE,
     country = c("Austria", "Azerbaijan", "Bangladesh", "Belarus"),
         gdp = c(25.17654, NA, 27.7971, NA)
)

我尝试使用summarise()rm.na = TRUE且没有使用

library(dplyr)
testdf2 %>% summarise(gdp_mean = mean(gdp))

testdf2 %>% summarise(gdp_mean = mean(gdp), rm.na = TRUE)

但是我不断得到如下输出:

  gdp_mean
1       NA

有人可以告诉我我在做什么错吗?

1 个答案:

答案 0 :(得分:1)

我认为您输入错误。我尝试过这样的代码,它可以正常工作:rm.na应该是na.rm,当然还有@kwiscion在他的评论中提到的内容!

testdf2 %>% summarise(gdp_mean = mean(gdp, na.rm = TRUE))