R語言資料質量分析

xunnan發表於2024-03-21


資料質量分析是資料預處理的前提,也是資料分析結論有效性準確性的基礎。
資料質量分析的主要任務是檢查原始資料中是否存在髒資料。
髒資料一般包括;

缺失值分析

缺失值產生的原因、影響

原因:

  • 部分資訊難以獲取,或獲取的代價太大
  • 因人為因素遺漏的、忘記寫的、對資料理解錯誤的等
  • 屬性值不存在

影響:

image.png

缺失值分析

常用函式:

# 結果返回TRUE,FALSE,TRUE為缺失值,FALSE為非缺失值
is.na()
# 結果返回TRUE,FALSE,FALSE為缺失值,TRUE為非缺失值
complete.cases()
# 形成矩陣或資料框式的表格,1和0顯示缺失值模式,0表示變數的列中有缺失值,1表示沒有
mice包中的md.pattern()
# 圖形繪製每個變數的缺失值數,還繪製每個變數組合的缺失值數
aggr()

異常值分析

含義與方法

異常分析式檢驗資料是否有錄入錯誤以及含有不合常理的資料,異常值也稱作離群點。
異常值的分析方法主要有:

  • 簡單統計量分析
  • 3\(\sigma\)原則
  • 箱型圖分析

質量控制圖

qcc包是專業的繪製質量控制圖的演算法包

# 該函式的基礎形式如下
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")

Rplot.png

箱型圖分析

image.png
繪製一個簡單的箱型圖:


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)

Rplot011.png

相關文章