数据质量分析是数据预处理的前提 ,也是数据分析结论有效性 和准确性 的基础。
数据质量分析的主要任务是检查原始数据中是否存在脏数据。
脏数据一般包括;
缺失值分析
缺失值产生的原因、影响
原因:
- 部分信息难以获取,或获取的代价太大
- 因人为因素遗漏的、忘记写的、对数据理解错误的等
- 属性值不存在
影响:
缺失值分析
常用函数:
r
# 结果返回TRUE,FALSE,TRUE为缺失值,FALSE为非缺失值
is.na()
# 结果返回TRUE,FALSE,FALSE为缺失值,TRUE为非缺失值
complete.cases()
# 形成矩阵或数据框式的表格,1和0显示缺失值模式,0表示变量的列中有缺失值,1表示没有
mice包中的md.pattern()
# 图形绘制每个变量的缺失值数,还绘制每个变量组合的缺失值数
aggr()
异常值分析
含义与方法
异常分析式检验数据是否有录入错误以及含有不合常理的数据,异常值也称作离群点。
异常值的分析方法主要有:
- 简单统计量分析
- 3\(\sigma\)原则
- 箱型图分析
质量控制图
qcc包是专业的绘制质量控制图的算法包
r
# 该函数的基础形式如下
qcc(data,type,nsigmas=3,plot=TRUE,...)
# 以xbar为例绘图图形
library(qcc)
data(pistonrings)
attach(pistonrings)
newdata<-rep(74,30)+rnorm(30)/50
qcc(pistonrings$diameter,type="xbar.one")
箱型图分析
绘制一个简单的箱型图:
r
library(ggplot2)
# 创建示例数据
set.seed(123) # 设置随机种子以便结果可复现
data <- data.frame(
group = rep(c("A", "B", "C"), each = 200), # 创建三个组
value = c(rnorm(200, mean = 0, sd = 1), # 为组A生成正态分布的随机数
rnorm(200, mean = 3, sd = 2), # 为组B生成正态分布的随机数
rnorm(200, mean = 6, sd = 1.5)) # 为组C生成正态分布的随机数
)
# 查看数据的前几行
head(data)
# 绘制箱型图
p <- ggplot(data, aes(x = group, y = value)) + # 设置数据和映射
geom_boxplot(fill = "lightblue") + # 添加箱型图图层,并设置填充颜色
theme_minimal() + # 使用简洁的主题
labs(title = "箱型图示例", # 添加标题
x = "组别", # x轴标签
y = "值") + # y轴标签
scale_fill_brewer(palette = "Pastel1") # 使用Brewer配色方案
# 显示图形
print(p)