R语言中缺失值的处理
1、查看缺失值
> x <- c(3,1,NA,NA)
> x <- c(3,1,NA,NA)
> y <- c(3,4,2,7)
> z <- c(3,2,5,1)
> da <- data.frame(x,y,z)
> da
x y z
1 3 3 3
2 1 4 2
3 NA 2 5
4 NA 7 1
> is.na(da)
x y z
[1,] FALSE FALSE FALSE
[2,] FALSE FALSE FALSE
[3,] TRUE FALSE FALSE
[4,] TRUE FALSE FALSE
> is.na(da[,1:2])
x y
[1,] FALSE FALSE
[2,] FALSE FALSE
[3,] TRUE FALSE
[4,] TRUE FALSE
2、缺失值重新赋值
> da
x y z
1 3 3 3
2 1 4 2
3 NA 2 5
4 NA 7 1
> da$x[is.na(da[,1])]
[1] NA NA
> da$x[is.na(da[,1])][1] <- 10
> da
x y z
1 3 3 3
2 1 4 2
3 10 2 5
4 NA 7 1
3、排除缺失值
da
sum(da$x)
sum(da$x,na.rm = T)
mean(da$x)
mean(da$x,na.rm = T)
4、删除含有缺失值的行
da
a <- na.omit(da)
a