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

 

posted @ 2021-04-23 09:19  小鲨鱼2018  阅读(870)  评论(0编辑  收藏  举报