在 R 中绘制图形并且不希望 NA 显示

Plot graph in R and don't want NA to show

我想在 R 中的 ggplot 中绘制分组图,但不想显示 NA。

我有以下代码:

lusl %>%
  ggplot(aes(wave, generalhealth)) + geom_point(alpha = .005) +
  stat_summary(aes(color = harassment_fct, group = harassment_fct),
                fun.y = mean, geom = "line", lwd = 1.5) +
  labs(x = "Wave", y = "GHQ-12 Value", color = "Experience of Racial Harassment")

我得到下图:

如何去掉 NA?

如果没有可重现的示例并且不了解您的数据库结构,一个简单的选择是使用 drop_na() 删除任何包含 NA 值的行。

lusl %>% 
  drop_na() %>%
  ggplot(aes(wave, generalhealth)) + geom_point(alpha = .005) # etc.

如果您想要更精确地删除 NA 值,仅在 harassment_fct 中(用于 color),然后过滤掉这些值:

lusl %>% 
  filter(!is.na(harassment_fct)) %>%
  ggplot(aes(wave, generalhealth)) + geom_point(alpha = .005) # etc.