删除ggplot2中缺少的值的问题

时间:2018-06-25 15:49:43

标签: r ggplot2 bar-chart na na.rm

我正在R中使用ggplot2创建条形图,并且想删除x值中的缺失值,我尝试了几种不同的方式来乘搭“ NA”,但似乎没有什么改变输出。目前,我的代码读取(数据不可公开获得,因此我更改了变量名):

ggplot(data = mydata, aes(x= x_mydata, y= y_mydata, na.rm = TRUE)) +
  stat_summary(fun.y = "mean", geom="bar", na.rm = TRUE)

3 个答案:

答案 0 :(得分:0)

我无法复制。效果很好

mydata <- data.frame(
  x_mydata = c(1, NA, 1, 2, 2, 2, 3, 3, NA),
  y_mydata = c(1,2,NA,4,5, 6,7, NA, NA)
)

ggplot(data = mydata, aes(x= x_mydata, y= y_mydata)) +
  stat_summary(fun.y = "mean", geom="bar", na.rm = TRUE)

请注意,没有na.rm的美感,因此您无需在aes()中传递它。

evaluates to 0

答案 1 :(得分:0)

我建议使用

data = mydata[!is.na(mydata$x_mydata), ]

如果您使用的是data.table,则更简单

data = mydata[!is.na(x_mydata)]

答案 2 :(得分:0)

我不确定您到底想要什么,但是将数据名称包装在na.omit中应该可以。所以像ggplot(data = na.omit(df),aes = ...