📘 Mô hình thống kê trong Phân tích Chuẩn đoán (Diagnostic Analytics)

Tổng quan

🎯 Mục tiêu:

Phân tích chuẩn đoán giúp trả lời câu hỏi “Tại sao?”, từ đó hiểu được nguyên nhân của sự thay đổi, biến động trong dữ liệu.
Ví dụ: Tại sao lợi nhuận giảm ở khu vực South? Nhóm hàng nào đang kém hiệu quả?


🔍 Các mô hình thường dùng trong Phân tích chuẩn đoán

Mô hình thống kê Mục tiêu Khi nào dùng
1️⃣ Thống kê mô tả nâng cao Nhận diện xu hướng bất thường Khám phá sự khác biệt giữa nhóm
2️⃣ Kiểm định t-test So sánh 2 nhóm So sánh lợi nhuận giữa 2 khu vực
3️⃣ ANOVA So sánh nhiều nhóm So sánh doanh số giữa các Category
4️⃣ Phân tích tương quan Mối quan hệ giữa 2 biến liên tục Discount ảnh hưởng đến Profit ra sao?
5️⃣ Hồi quy tuyến tính đơn giản Dự đoán và giải thích xu hướng Lợi nhuận tăng/giảm theo Discount?

📦 Chuẩn bị dữ liệu – Đọc dữ liệu Superstore từ Excel online

# Cài gói nếu cần
install.packages(c("readxl", "dplyr", "ggplot2"))

# Đọc dữ liệu từ file Excel online
library(readxl)
library(dplyr)

url <- "http://giangtranvn.com/wp-content/uploads/2024/08/3.-SUPERSTORE.xlsx"

# Đọc sheet đầu tiên
superstore <- read_excel(url)

1️⃣ Thống kê mô tả nâng cao


library(ggplot2)


# Tổng quan doanh số và lợi nhuận theo khu vực
superstore %>%
  group_by(Region) %>%
  summarise(
    Total_Sales = sum(Sales, na.rm = TRUE),
    Total_Profit = sum(Profit, na.rm = TRUE)
  )

2️⃣ Kiểm định t-test – So sánh 2 nhóm

❓ Doanh số ở East và West có khác biệt đáng kể không?


east_west <- superstore %>%
  filter(Region %in% c("East", "West")) %>%
  select(Region, Sales)

# T-Test
t.test(Sales ~ Region, data = east_west)

📌 Giải thích kết quả:

Nếu p-value < 0.05 → Có sự khác biệt có ý nghĩa thống kê

Ngược lại: không có đủ bằng chứng về sự khác biệt

3️⃣ ANOVA – So sánh nhiều nhóm

❓ Lợi nhuận có khác nhau giữa 3 nhóm Category không?

anova_model <- aov(Profit ~ Category, data = superstore)
summary(anova_model)

📌 Dùng thêm boxplot để minh họa:



ggplot(superstore, aes(x = Category, y = Profit)) +
  geom_boxplot(fill = "lightblue") +
  labs(title = "So sánh lợi nhuận theo nhóm Category")

4️⃣ Phân tích tương quan

❓ Giảm giá (Discount) có tương quan với lợi nhuận (Profit) không?



cor(superstore$Discount, superstore$Profit, use = "complete.obs")

# Biểu đồ
ggplot(superstore, aes(x = Discount, y = Profit)) +
  geom_point(alpha = 0.4) +
  geom_smooth(method = "lm", col = "red")

5️⃣ Hồi quy tuyến tính đơn giản

❓ Discount có ảnh hưởng đến Profit?



lm_model <- lm(Profit ~ Discount, data = superstore)
summary(lm_model)

📌 Diễn giải:

Estimate của Discount: ảnh hưởng tăng/giảm lợi nhuận theo % giảm giá

p-value < 0.05: có ý nghĩa thống kê

R-squared: giải thích được bao nhiêu % biến thiên của Profit

📊 Tổng kết

Mô hình Hàm chính Kết luận rút ra

T-Test t.test() Có sự khác biệt giữa 2 nhóm?

ANOVA aov() Có sự khác biệt giữa nhiều nhóm?

Tương quan cor() Mối liên hệ giữa 2 biến?

Hồi quy lm() Mức độ ảnh hưởng của 1 biến độc lập đến biến phụ thuộc

📚 Tài nguyên học thêm

Tidy Modeling in R

R for Data Science – Phần thống kê mô tả

R ANOVA Tutorial