如何在R中删除向量中的NA值(3种方法)

6,644 阅读1分钟

你可以使用以下方法之一从R中的向量中移除NA值。

方法1:从向量中删除NA值

data <- data[!is.na(data)]

方法2:使用na.rm进行计算时去除NA值

max(data, na.rm=T)
mean(data, na.rm=T)
...

方法3:使用na.otmit在进行计算时移除NA值

max(na.omit(data))

下面的例子展示了如何在实践中使用这些方法中的每一个。

方法1:从矢量中删除NA值

下面的代码显示了如何在R语言中从一个向量中移除NA值:

#create vector with some NA values
data <- c(1, 4, NA, 5, NA, 7, 14, 19)

#remove NA values from vector
data <- data[!is.na(data)]

#view updated vector
data

[1]  1  4  5  7 14 19

请注意,原始向量中的每一个NA值都已被删除。

方法2:使用na.rm进行计算时去除NA值

下面的代码显示了如何使用na.rm参数在进行一些计算时从一个向量中删除NA值:

#create vector with some NA values
data <- c(1, 4, NA, 5, NA, 7, 14, 19)

#calculate max value and remove NA values
max(data, na.rm=T)

[1] 19

#calculate mean and remove NA values
mean(data, na.rm=T)

[1] 8.333333

#calculate median and remove NA values
median(data, na.rm=T)

[1] 6

方法3:在进行计算时使用na.otmit删除NA值

下面的代码显示了在进行某些计算时如何使用na.省略参数来省略向量中的NA值:

#create vector with some NA values
data <- c(1, 4, NA, 5, NA, 7, 14, 19)

#calculate max value and omit NA values
max(na.omit(data))

[1] 19

#calculate mean and omit NA values
mean(na.omit(data))

[1] 8.333333

#calculate median and omit NA values
median(na.omit(data))

[1] 6

其他资源

下面的教程解释了如何在R中进行其他常见的缺失值操作:

如何在R中查找和计算缺失值
如何在R中估算缺失值