在创建R数据框列的图表时,如何处理警告消息“Removed X rows containing missing values”?


如果我们的数据框中存在缺失值/NA,并且使用ggplot2创建图表而不排除这些缺失值,那么我们会收到警告“Removed X rows containing missing values”,其中X将是包含NA值的列的行数。但是图表将是正确的,因为它将通过排除NA值来计算。为了避免此错误,我们只需要传递不包含NA值的数据框列的子集,如下例所示。

考虑一下y列包含一些NA值的数据框:

示例

 在线演示

set.seed(112)
x<-sample(0:10,25,replace=TRUE)
y<-sample(c(21:25,NA),25,replace=TRUE) df<-data.frame(x,y)
df

输出

   x  y
1  4  21
2  10  NA
3  10  23
4  10 22
5  2  NA
6  1 NA
7  0 25
8  8 NA
9  1 22
10 4 23
11 2 21
12 3 23
13 9 25
14 6 25
15 7 21
16 10 24
17 6 NA
18 6 NA
19 8 NA
20 4 24
21 1 23
22 7 21
23 1 21
24 0 22
25 4 NA

加载ggplot2包并为df的x和y列创建点图:

library(ggplot2) ggplot(df,aes(x,y))+geom_point()

警告消息:

Removed 5 rows containing missing values (geom_point) -

在这里,我们收到了关于缺失值的警告消息。

图表输出

通过排除NA值来创建x和y的点图:

示例

ggplot(data=subset(df,!is.na(y)),aes(x,y))+geom_point()

图表的输出与上面显示的相同,但不会显示警告消息:

更新于:2020年10月16日

789 次浏览

开启您的职业生涯

完成课程获得认证

开始学习
广告