R语言-----数据分析2

关于R语言数据分析,上篇文章,我们已经讲了数据探索,本章讲数据缺失处理,日常我们碰到的数据都会含有一些问题,对于这些问题,我们有如下处理策略:

1.将含有缺失值的案例剔除

2.根据变量之间的相关关系填补缺失值

3.根据案例之间的相似性填补缺失值

4.使用能够处理缺失值数据的工具

将缺失部分剔除

当这些记录所占的比例在可用数据集中非常小的时候,这个选择比较合理。

> algae[!complete.cases(algae),] ##显示含有缺失值的记录

> NROW(algae[!complete.cases(algae),])  ##含有缺失值的记录行数

> algae<-na.omit(algae) ##删除这16个记录

R语言-----数据分析2_第1张图片

当然你也可以选择只删除某一行,例如删除62行和199行,输入如下命令:

> algae<-algae[-c(62,199)]

complete.case()可用来识别矩阵或数据框中没有缺失值的行

前面加了!,是逻辑值。计算有缺失值的行数

> apply(algae,1,function(x)sum(is.na(x)))  ##非常强大的函数

> manyNAs(algae,0.2) ##找出每一行中缺失值的个数大于一定比例的,采用manyNAs()函数##manyNAs()中默认的比例值为0.2

R语言-----数据分析2_第2张图片

用中心趋势值来填补缺失值

先大体看看数据分布的状态,之后进行填补。

若数据服从正态分布:选用平均值填充,

如下,用mean()函数,就可以实现用平均值填充

R语言-----数据分析2_第3张图片

若数据服从偏态分布:采用中位数填补缺失值

如下,用median()函数,实现中位数填充

R语言-----数据分析2_第4张图片

根据变量之间的相关关系填补缺失值

根据案例之间的相似性填补缺失值

这两部分交给各位下去了解。

如上~~

你可能感兴趣的:(R语言-----数据分析2)