R语言数据质量分析

数据质量分析是数据预处理的前提 ,也是数据分析结论有效性准确性 的基础。

数据质量分析的主要任务是检查原始数据中是否存在脏数据。

脏数据一般包括;

缺失值分析

缺失值产生的原因、影响

原因:

  • 部分信息难以获取,或获取的代价太大
  • 因人为因素遗漏的、忘记写的、对数据理解错误的等
  • 属性值不存在

影响:

缺失值分析

常用函数:

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)