logo xDuLieu.com

Trang trướcPhân tích phương sai nhiều yếu tốTrang sau

Khái quát

Trong nhiều trường hợp, các nhóm được hình thành từ sự kết hợp của một số yếu tố. Ta xét tiếp thí dụ về chiều cao cây. Trong phần trước ta đã khảo sát ảnh hưởng của yếu tố thứ nhất là chế độ tưới. Nếu các cây con của vườn ấy được cung cấp từ một số công ty khác nhau thì chiều cao cây có thể chịu tác động của yếu tố thứ hai này và cả tương tác của hai yếu tố trên (thí dụ cây của công ty A cần nhiều nước nhưng công ty B thì không). Như vậy số nhóm sẽ tăng lên. Thí dụ vướn cây sử dụng cây con từ hai công ty A và B thì sự kết hợp đầy đủ của hai yếu tố chế độ tưới và nhà cung cấp có thể trình bày trong Bảng 1.

Bảng 1 Sự phân nhóm dựa vào kết hợp hai yếu tố
Chế độ tưới
Ít Trung bình Nhiều
Nhà
cung cấp
A Ít - A Trung bình - A Nhiều - A
B Ít - B Trung bình - B Nhiều - B

Qua thí dụ trên, ta thấy khi kết hợp đầy đủ `a` giá trị của yếu tố A và `b` giá trị của yếu tố B, ta sẽ tạo nên `ab` nhóm. Nếu trong mỗi nhóm đều có `n` chủ thể không lặp (trường hợp cân bằng) thì dữ liệu của ta sẽ gồm `abn` chủ thể. Và bảng số liệu có thể có dạng như Bảng 2.

Bảng 2 Giá trị của đáp ứng `Y` khi kết hợp đầy đủ các giá trị của hai yếu tố A và B
Yếu tố B Trung bình
`B_1` `B_2` . . . `B_j` . . . `B_b`
Yếu tố A `A_1` `y_(111)` `y_(121)` . . . `y_(1j1)` . . . `y_(1b1)` `bar y_(a1)`
. . . . . . . . . . . . . . . . . .
`y_(11k)` `y_(12k)` . . . `y_(1jk)` . . . `y_(1bk)`
. . . . . . . . . . . . . . . . . .
`y_(11n)` `y_(12n)` . . . `y_(1jn)` . . . `y_(1bn)`
`A_2` `y_(211)` `y_(221)` . . . `y_(2j1)` . . . `y_(2b1)` `bar y_(a2)`
. . . . . . . . . . . . . . . . . .
`y_(21k)` `y_(22k)` . . . `y_(2jk)` . . . `y_(2bk)`
. . . . . . . . . . . . . . . . . .
`y_(21n)` `y_(22n)` . . . `y_(2jn)` . . . `y_(2bn)`
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
`A_i` `y_(i11)` `y_(i21)` . . . `y_(ij1)` . . . `y_(ib1)` `bar y_(ai)`
. . . . . . . . . . . . . . . . . .
`y_(i1k)` `y_(i2k)` . . . `y_(ijk)` . . . `y_(ibk)`
. . . . . . . . . . . . . . . . . .
`y_(i1n)` `y_(i2n)` . . . `y_(ijn)` . . . `y_(ibn)`
. . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . .
`A_a` `y_(a11)` `y_(a21)` . . . `y_(aj1)` . . . `y_(ab1)` `bar y_(aa)`
. . . . . . . . . . . . . . . . . .
`y_(a1k)` `y_(a2k)` . . . `y_(ajk)` . . . `y_(abk)`
. . . . . . . . . . . . . . . . . .
`y_(a1n)` `y_(a2n)` . . . `y_(ajn)` . . . `y_(abn)`
Trung bình `bar y_(b1)` `bar y_(b2)` . . . `bar y_(bj)` . . . `bar y_(b b)`

Trong bảng dữ liệu trên :

  • `i` là chỉ số của yếu tố A, `j` là chỉ số của yếu tố B, `k` là chỉ số của chủ thể trong một nhóm,
  • `y_(ijk)` là đáp ứng `Y` của chủ thể thứ `k` tương ứng với mức `i` của yếu tố A và mức `j` của yếu tố B;
  • `bar y_(ai)` là trung bình của mức `i` của yếu tố A (gồm `bn` giá trị);
  • `bar y_(bj` là trung bình của mức `j` của yếu tố B (gồm `an` giá trị);
  • `bar y_(ij)` là trung bình của nhóm `ij` (gồm `n` giá trị);
  • `bar y` là trung bình của toàn bộ `abn` giá trị của `Y`.

Trong trường hợp có nhiều yếu tố hơn, ta không thể trình bày dữ liệu theo dạng Bảng 2 mà phải sử dụng cách trình bày khác, tương tự như trong tập tin chieu-cao-cay.csv.

Để đánh giá tác động của từng yếu tố cũng như tương tác giữa các yếu tố, ta sử dụng phân tích phương sai.


Phân tích phương sai

Về nguyên tắc chung, phân tích phương sai cho nhiều yếu tố kết hợp đủ cũng tương tự như trường hợp một yếu tố mà ta đã xem xét, cũng gồm các bước:

  • tính các tổng phương sai `SS`, bao gồm tổng phương sai của các yếu tố, tổng phương sai tương tác và tổng phương sai sai lệch.
  • tính các trung bình phương sai `MS` bằng cách chia `SS` cho độ tự do tương ứng,
  • tính các giá trị `F_(oi) = (MS_i) / (MS_E)`,
  • so sánh với `F_(oi)` với `F_i`*,
  • hoặc tính các giá trị `p`,
  • từ đó rút ra kết luận.

Thí dụ như trường hợp hai yếu tố A và B, ta phải tính tổng phương sai chung `SS_T`, tổng phương sai của các yếu tố `SS_A` và `SS_B`, tổng phương sai của tương tác `SS_(AB)`, và tổng phương sai sai lệch `SS_E`. Người ta cũng chứng minh được rằng:

`SS_T=SS_A+SS_B+SS_(AB)+SS_E`(11)

Khi xử lý đữ liệu bằng các phần mềm, kết quả thường được trình bày dưới dạng tương tự như Bảng 3.

Bảng 3 Kết quả của phân tích phương sai trường hợp hai yếu tố kết hợp đầy đủ
Nguồn biến động Độ tự do `SS` `MS` `F_o` `F`* Giá trị p
Yếu tố A `a-1` `SS_A` `MS_A` `(MS_A)/(MS_E)` `F_A`*
Yếu tố B `b-1` `SS_B` `MS_B` `(MS_B)/(MS_E)` `F_B`*
Tương tác AB `(a-1)(b-1)` `SS_(AB)` `MS_(AB)` `(MS_(AB))/(MS_E)` `F_(AB)`*
Sai lệch `ab(n - 1)` `SS_E` `MS_E`
Tổng `abn-1` `SS_T`

Bạn có thể tham khảo thêm chi tiết quá trình phân tích trên trong phần "thí nghiệm kết hợp đủ".


R và dạng thức phân tích

Khi phân tích phương sai nhiều yếu tố (hoặc phức tạp hơn) bằng R, ta vẫn sử dụng hàm aov. Tuy nhiên dạng thức phân tích phải được trình bày theo quy định của R. Lấy thí dụ trong dữ liệu ta có đáp ứng y chịu tác động của 3 yếu tố A, B, C và hiệp biến x, ta có thể có một số dạng thức phân tích và cách thể hiện như trên Bảng 4.

Bảng 4 Một số dạng thức phân tích và cách trình bày trong R
Dạng trình bày Dạng thức phân tích
 y ~ A hay y ~ B hay y ~ C Tác động của một yếu tố
 y ~ A + B Tác động của yếu tố A và yếu tố B
 y ~ A + x Tác động của yếu tố A và hiệp biến x
 y ~ A*B
 y ~ A + B + A:B
Tác động của yếu tố A, yếu tố B và tương tác AB
 y ~ A*B + B:C Tác động của các yếu tố A, B, các tương tác AB, BC
 y ~ A*B*C
 y ~ A + B + C + A:B + A:C + B:C
  + A:B:C
Tác động của các yếu tố A, B, C, các tương tác cấp hai AB, AC, BC, và tương tác cấp ba ABC
 y ~ (A + B + C)^2
 y ~ A*B*C − A:B:C
 y ~ A + B + C + A:B + A:C + B:C
Tác động của các yếu tố A, B, C, các tương tác cấp hai AB, AC, BC, không xét tương tác cấp ba ABC

Thí dụ

Ta phát triển tiếp thí dụ về chiều cao cây. Cây con của vườn được cung cấp từ hai công ty A và B. Sau ba tháng chiều cao cây được ghi nhận và tổng hợp trong Bảng 5.

Bảng 5 Chiều cao cây dưới tác động của chế độ tưới và nhà cung cấp
Chế độ tưới
Ít Trung bình Nhiều
Nhà
cung cấp
A 92 88 130
115 110 147
87 94 139
104 105 134
66 115 155
B 73 88 113
64 91 107
57 96 110
62 104 102
58 92 100

Đơn vị : cm

Tất nhiên, để có thể xử lý bằng R hay nhiều phần mềm thống kê khác, các dữ liệu trên phải được sắp xếp theo dạng khác. Bạn có thể tham khảo tại tập tin chieu-cao-cay.csv.

Phân tích phương sai

Tương tự như các trường hợp đã khảo sát, ta chuyển tập tin chieu-cao-cay.csv vào R và có bảng dữ liệu ccao. Trong bảng này ba biến mà ta quan tâm là đáp ứng Chieu_Cao và hai yếu tố CD_Tuoi và Cung_Cap. Ta sử dụng hàm aov để khảo sát tác động của chế độ tưới và nhà cung cấp bằng đoạn lệnh sau:

 kq2 <- aov(Chieu_Cao ~ Cung_Cap*CD_Tuoi, data = ccao)
summary(kq2)

Kết quả thu được như sau :

> summary(kq2)
                 Df Sum Sq Mean Sq F value   Pr(>F)    
Cung_Cap          1   4417    4417  39.102 1.83e-06 ***
CD_Tuoi           2  10574    5287  46.809 5.21e-09 ***
Cung_Cap:CD_Tuoi  2    994     497   4.402   0.0235 *  
Residuals        24   2711     113                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Ta thấy kết quả trên có dạng gần tương tự như Bảng 3. Dựa vào giá trị `p` (cột "Pr(>F)") ta có thể kết luận rằng cả nhà cung cấp và chế độ tưới đều có ảnh hưởng đến chiều cao cây ở độ tin cậy 95%, ngoài ra giữa hai yếu tố này có sự tương tác.


So sánh các nhóm

Cũng như trường hợp một yếu tố, ta có thể phân tích sâu hơn bằng cách dùng lệnh TukeyHSD để so sánh các nhóm với nhau bằng đoạn lệnh:

 kt2 <- TukeyHSD(kq2, ordered = TRUE)
kt2

Kết quả thu được là :

> kt2
  Tukey multiple comparisons of means
    95% family-wise confidence level
    factor levels have been ordered

Fit: aov(formula = Chieu_Cao ~ Cung_Cap * CD_Tuoi, data = ccao)

$Cung_Cap
        diff      lwr      upr   p adj
A-B 24.26667 16.25725 32.27608 1.8e-06

$CD_Tuoi
                 diff       lwr      upr     p adj
Trung_Binh-It    20.5  8.630659 32.36934 0.0006734
Nhieu-It         45.9 34.030659 57.76934 0.0000000
Nhieu-Trung_Binh 25.4 13.530659 37.26934 0.0000503

$`Cung_Cap:CD_Tuoi`
                          diff        lwr      upr     p adj
A:It-B:It                 30.0   9.217255 50.78275 0.0020055
B:Trung_Binh-B:It         31.4  10.617255 52.18275 0.0012006
A:Trung_Binh-B:It         39.6  18.817255 60.38275 0.0000595
B:Nhieu-B:It              43.6  22.817255 64.38275 0.0000142
A:Nhieu-B:It              78.2  57.417255 98.98275 0.0000000
B:Trung_Binh-A:It          1.4 -19.382745 22.18275 0.9999382
A:Trung_Binh-A:It          9.6 -11.182745 30.38275 0.7102448
B:Nhieu-A:It              13.6  -7.182745 34.38275 0.3590393
A:Nhieu-A:It              48.2  27.417255 68.98275 0.0000029
A:Trung_Binh-B:Trung_Binh  8.2 -12.582745 28.98275 0.8229452
B:Nhieu-B:Trung_Binh      12.2  -8.582745 32.98275 0.4753775
A:Nhieu-B:Trung_Binh      46.8  26.017255 67.58275 0.0000046
B:Nhieu-A:Trung_Binh       4.0 -16.782745 24.78275 0.9903911
A:Nhieu-A:Trung_Binh      38.6  17.817255 59.38275 0.0000855
A:Nhieu-B:Nhieu           34.6  13.817255 55.38275 0.0003699

Bảng trên cho ta một số kết quả sau :

  • Trong phần "$Cung_Cap", ta thấy khoảng ước lượng cho độ chênh lệch giữa hai nhà cung cấp là [16,25725, 32,27608] không chứa 0, hay `p = 0,0000018`. Điều này chứng tỏ có sự khác biệt giữa hai nhà cung cấp.
  • Tương tự, trong phần "CD_Tuoi" các kết quả cũng cho thấy chế độ tưới có ảnh hưởng đến chiều cao cây.
  • Trong phần "Cung_Cap:CD_Tuoi", ta thấy có 15 sự so sánh giữa 6 nhóm. Trong đó có 6 trường hợp mà sự khác biệt giữa các nhóm không có ý nghĩa thống kê ở khoảng tin cậy 95% (khi khoảng tin cậy chứa 0 hay `p< 0,05`)

Sự khác biệt giữa 6 nhóm trên có thể trình bày ở dạng biểu đồ khi ta dùng đoạn lệnh sau:

 par(mar = c(5, 12, 4, 2))
 plot(kt2, las = 1, col = "red")
 abline(v = 0, lty = "64", col = "blue", lwd = 2)

Trong đoạn lệnh trên, câu lệnh thứ hai là quan trọng nhất, dùng để vẽ. Hai câu lệnh còn lại điều chỉnh một số chi tiết của biểu đồ để tăng tính mỹ thuật. Kết quả được trình bày trên Hình 1.

Hình 1 So sánh tác động của các nhóm đến chiều cao cây

Trên Hình 1, trục hoành thể hiện chênh lệch của trung bình các nhóm; đường "0" thẳng đứng màu xanh tương ứng với độ chênh lệch bằng 0. Trên mỗi dòng của phần chú giải ở bên trái của Hình 1, nhóm bên trái có chiều cao cây lớn hơn. Như vậy cây thuộc nhóm "B-It" có chiều cao thấp nhất, nhóm "A-Nhieu" có chiều cao lớn nhất. Khoảng ước lượng cho hiệu số của trung bình chiều cao giữa các nhóm được biểu thị bằng các đoạn màu đỏ. Trên Hình 1, ta thấy có 6 đoạn màu đỏ cắt đường "0" màu xanh, như vậy có 6 cặp nhóm mà sự khác biệt về chiều cao không có ý nghĩa thống kê (thí dụ giữa hai nhóm A-Trung_Binh và A-It).


Sử dụng phụ kiện effect

Ta có thể dùng hàm plot phối hợp với hàm Effect của phụ kiện effects để có một nhận định khái quát về tác động của hai yếu tố đến chiều cao cây bằng đoạn lệnh sau:

 library(effects)
plot(Effect(c("Cung_Cap", "CD_Tuoi"), kq2))

Ta có Hình 2.

Hình 2 Tác động của các yếu tố đến chiều cao cây



Trang trướcVề đầu chươngTrang sau


Trang web này được cập nhật lần cuối ngày 26/11/2018