R语言去除缺失数据

0?wx_fmt=jpeg

在数据挖掘过程中,我们接触到的数据并不总是完整的,要么缺失、不结构化,要么严重的就是数据错误,就像生活也并不总是完美的。因为大数据的黑箱操作,那么,当我们拿到一份或者自己获取整理数据的时候,就要考虑数据的完整性。否则,在错误的数据上花费了九牛二虎之力,自己还以为做的很正确。

下面谈谈我在用R数据挖掘过程中用到的去除缺失值的常用方法,这些都是我平时也会经常遇到会犯的错误:

1,比如a<-matrix(c(1,2,3,4,NA,6,7,8,9),nrow=3,ncol=3,byrow=TRUE)

complete.cases(a)

[1]  TRUE FALSE  TRUE

而a[complete.case(a),]则会返回去除缺失值所在行的新矩阵

       [,1] [,2] [,3]

[1,]    1    2    3

[2,]    7    8    9

也可以用

na.omit(a),得到

 [,1] [,2] [,3]

[1,]    1    2    3

[2,]    7    8    9

attr(,"na.action")

[1] 2

attr(,"class")

[1] "omit"

2,如果有另外一个向量b<-matrix(c(1,2,NA),nrow = 3,ncol = 1,byrow = TRUE)

 b

[,1]

[1,]    1

[2,]    2

[3,]   NA

   complete.cases(a,b)

  [1]  TRUE FALSE FALSE   返回的是去除a,b的缺失值后的行,比如a是第二行缺失,b是第三行缺失,则a,b

  只剩下一行;此时

  a[complete.cases(a,b),]    得到

  [1] 1 2 3

  b[complete.cases(a,b),]   得到

  [1] 1

3,用na.omit()则又是另外的结果了

   na.omit(a,b)

         [,1] [,2] [,3]

  [1,]    1    2    3

  [2,]    7    8    9

  attr(,"na.action")

  [1] 2

  attr(,"class")

  [1] "omit"

  na.omit(b,a)

        [,1]

  [1,]    1

  [2,]    2

  attr(,"na.action")

  [1] 3

  attr(,"class")

  [1] "omit"

显然na.omit()只是会对前面的进行去除缺失,na.omit(a,b)与na,omit(a)作用一样,同样na.omit(b,a)与na.omit(b),作用一样。

na.omit(b)

     [,1]

[1,]    1

[2,]    2

attr(,"na.action")

[1] 3

attr(,"class")

[1] "omit"

更多精彩尽在点击【阅读原文】

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大数据技术派

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值