2017-07-27 136 views
2

我想了解ggplot2的geom_bar如何對待NAs。 幫助文件說:na.rm = T治療通過ggplot2的geom_bar

library(ggplot2) 
?geom_bar 

na.rm:如果爲FALSE,默認值,遺漏值與警告去除。如果爲TRUE,缺少值將被無提示地刪除。

我想出來:

md <- data.frame(a = c(letters[1:5], letters[1:4], letters[1:3], rep(NA, 3))) 
str(md); levels(md$a) 

ggplot(data = md, mapping = aes(x = a)) + 
    geom_bar(na.rm = F) 

運行沒有警告和每個因子的水平以及在NAS產生計數。說得通。

現在,我不希望納入統計數字。所以,我跑:

ggplot(data = md, mapping = aes(x = a)) + 
    geom_bar(na.rm = T) 

但我仍然在圖片中的NA。爲什麼? 我錯過了什麼?

謝謝!

+0

澄清:我的問題不是關於「我可以排除NAs被計數的人」 - 我知道該怎麼做。 我的問題是:爲什麼na.rm = T在這種情況下不適用於geom_bar? – user3245256

回答

-1

它的一個bug 劑量不能刪除字符的情況下。這是討論here