R语言缺失值的处理

R语言缺失值的处理

  • 一、 缺失值的判别
  • 二、缺失数据的删除
    • 1.na.omit函数
    • 2.用is.na函数
  • 三、缺失值的替换
    • 1.替换为均值
    • 2.替换为中位数
    • 3.替换为标准差
    • 4.插值法替换数据

一、 缺失值的判别

data <- c(1:100)
da <- replace(data,data>57,NA);da

R语言缺失值的处理_第1张图片
如图所示,这个数据中有很多缺失值
我们可以用is.na()函数来判断缺失值

is.na(da)

R语言缺失值的处理_第2张图片
是TRUE则表明是,FALSE则表明不是缺失值
我们可以用sum函数来计算缺失值的数量

sum(is.na(da))	

在这里插入图片描述
可以看出一共有43个缺失值

二、缺失数据的删除

1.na.omit函数

如果数据是数据框的形式,使用此函数效果更佳
当数据是数据框时,使用此函数可以直接删除缺失值,当数据是向量形式时,删除缺失数据的同时也会把缺失的数据给指出来

na.omit(da)#向量形式

R语言缺失值的处理_第3张图片

2.用is.na函数

da[!is.na(da)]

在这里插入图片描述

三、缺失值的替换

1.替换为均值

da[is.na(da)]=mean(da[!is.na(da)]);da

R语言缺失值的处理_第4张图片
可以看出缺失值变成了29

2.替换为中位数

da[is.na(da)]=median(da[!is.na(da)]);da

3.替换为标准差

da[is.na(da)]=sd(da[!is.na(da)]);da

R语言缺失值的处理_第5张图片

4.插值法替换数据

样本插值法

install.packages("zoo")
library(zoo)
na.spline(da)

R语言缺失值的处理_第6张图片

你可能感兴趣的:(R语言数据分析,r语言,开发语言)