- Lệnh sử dụng trong STATA như sau: + Statistics -> Linear models and related -> ANOVA/MANOVA -> One-way ANOVA -> Chọn biến số cần kiểm định response variable và biến số phân nhĩm factor
Trang 1Bài 4 (STATA)
SỬ DỤNG STATA 10.0 ĐỂ PHÂN TÍCH THỐNG KÊ
TRONG NGHIÊN CỨU KHOA HỌC
PHÂN TÍCH PHƯƠNG SAI (ONE-WAY ANOVA), TƯƠNG QUAN VÀ HỒI QUI TUYẾN TÍNH
TS BS Tăng Kim Hồng
1 Phân tích phương sai
- Mở file “PULSE” để phân tích
- Lệnh sử dụng trong STATA như sau:
+ Statistics -> Linear models and related -> ANOVA/MANOVA -> One-way ANOVA -> Chọn biến số cần kiểm định (response variable) và biến số phân nhĩm (factor variable) -> Chọn loại test so sánh giữa các nhĩm (Multiple-comparison tests) -> Submit
(Giả sử giả định về phân phối bình thường của biến số đã được thỏa)
Trang 2oneway weight activity, bonferroni scheffe tab
| Summary of weight
activity | Mean Std Dev Freq
-+ -
0 | 66 0 1
1 | 65.888889 12.830086 9
2 | 63.360656 10.773475 61
3 | 65.047619 9.2977212 21
-+ -
Total | 64.021739 10.53198 92
Analysis of Variance Source SS df MS F Prob > F -
Between groups 84.0496781 3 28.0165594 0.25 0.8638 Within groups 10009.9068 88 113.748941 - Total 10093.9565 91 110.922599
Bartlett's test for equal variances: chi2(2) = 1.2830 Prob>chi2 = 0.527
note: Bartlett's test performed on cells with positive variance:
1 single-observation cells not used
Trang 3Comparison of weight by activity
(Bonferroni)
Row Mean-|
Col Mean | 0 1 2
-+ -
1 | -.111111
| 1.000
|
2 | -2.63934 -2.52823
| 1.000 1.000
|
3 | -.952381 -.84127 1.68696
| 1.000 1.000 1.000
Comparison of weight by activity
(Scheffe)
Row Mean-|
Col Mean | 0 1 2
-+ -
1 | -.111111
| 1.000
|
2 | -2.63934 -2.52823
| 0.996 0.931
|
3 | -.952381 -.84127 1.68696
| 1.000 0.998 0.942
Giá trị p của Bartlett’s test (test chứng minh phương sai bằng nhau) = 0.527 tức là lớn hơn giá trị 0.05 rất nhiều, cho thấy rằng phương sai của các nhóm vận động thể lực là tương tự nhau Giá trị p của F test = 0.8638, chứng tỏ rằng trung bình cân nặng của các nhóm vận động thể lực là không khác nhau
Kết quả của test so sánh các nhóm với nhau Bonferroni hay Scheffe đều cho kết quả tương tự Điều này gợi ý rằng không có sự khác biệt một cách có ý nghĩa của trung bình cân nặng giữa các nhóm có hoạt động thể lực khác nhau
2 Tương quan
- Mở file “PULSE” để phân tích
- Trước khi tính hệ số tương quan, chúng ta nên vẽ 1 đồ thị scatterplot để khảo sát bằng mắt sự liên quan giũa 2 biến số
- Lệnh sử dụng trong STATA: scatter y x, trong đó biến số y tạo thành trục tung và biến
số x tạo thành trục hoành Giả sử ta khảo sát sự liên quan giữa 2 biến số pulse1 và pulse2
twoway (scatter pulse2 pulse1)
Trang 4pulse1
Đồ thị scatter plots cho thấy có sự liên quan tuyến tính giữa 2 biến số pulse1 và pulse2
Trang 5Như trong phần lý thuyết chúng ta đã biết: nếu biến số x và y phân phối bình thường thì tương quan giữa 2 biến số sẽ được tính bằng hệ số tương quan r – hay còn gọi hệ số tương quan Pearson, hay còn gọi product moment correlation coeficient
Nếu 2 biến số x và y phân phối không bình thường thì tương quan sẽ được tính bằng hệ
số tương quan Spearman
- Để tính hệ số tương quan Pearson, lệnh trong STATA như sau:
+ Statistics -> Summaries, tables, and tests -> Summary and descriptive statistics -> Correlations and covariances -> Chọn biến số cần tính tương quan -> Submit
Trang 6
- Kết quả có được như sau:
correlate pulse1 pulse2
(obs=90)
| pulse1 pulse2
-+ -
pulse1 | 1.0000
pulse2 | 0.5999 1.0000
Không giống như nhiều phần mềm khác, STATA không cho biết giá trị p của phép kiểm chứng minh hệ số tương quan này khác không, do đó ta phải dùng cách khác để tính giá trị p này Trong trường hợp này p <0.001, do đó ta có thể kết luận rằng 2 biến số này thật
sự tương quan với nhau với hệ số tương quan = 0.60
- Để tính hệ số tương quan Spearman, lệnh trong STATA như sau:
+ Statistics -> Summaries, tables, and tests -> Non-parametric tests of hypotheses -> Spearman’s rank correlation -> Chọn biến số cần tính tương quan -> Submit
Trang 8- Kết quả có được như sau:
spearman pulse1 pulse2, stats(rho)
Number of obs = 90
Spearman's rho = 0.6393
Test of Ho: pulse1 and pulse2 are independent
Prob > |t| = 0.0000
Trong trường hợp này, STATA cho biết giá trị p của phép kiểm chứng minh hệ số tương quan này khác không, do đó ta phải dùng cách khác để tính giá trị p này Trong trường hợp này p <0.001, do đó ta có thể kết luận rằng 2 biến số này thật sự tương quan với nhau với hệ số tương quan = 0.64
3 Hồi qui tuyến tính đơn giản
3.1 Phương trình hối qui tuyến tính
- Trước khi báo cáo kết quả của hồi qui tuyến tính, chúng ta phải đảm bảo rằng dữ liệu đã thỏa các giả định (xem phần lý thuyết)
- Mở file “PULSE” để phân tích
- Cũng giống như khi tính hệ số tương quan, trước tiên chúng ta nên vẽ 1 đồ thị scatterplot của Y (trục tung) theo X (trục hoành)
- Giả sử ta khảo sát phương trình hồi qui của biến số chiều cao trên biến số cân nặng (cân nặng là biến số kết quả còn chiều cao là biến số giải thích)
twoway (scatter weight height)
height
- Để thực hiện regression, lệnh trong STATA như sau:
Trang 9+ Statistics -> Linear model and related -> Linear regression -> Chọn biến số cần làm regression -> Submit
Trang 10- Kết quả có được như sau:
regress weight height
Source | SS df MS Number of obs = 92 -+ - F( 1, 90) = 142.15 Model | 6180.73703 1 6180.73703 Prob > F = 0.0000 Residual | 3913.21949 90 43.4802166 R-squared = 0.6123 -+ - Adj R-squared = 0.6080 Total | 10093.9565 91 110.922599 Root MSE = 6.594 - weight | Coef Std Err t P>|t| [95% Conf Interval] -+ - height | .9015106 .075613 11.92 0.000 7512921 1.051729 _cons | -90.59713 12.98666 -6.98 0.000 -116.3974 -64.79685 -
Phần trên của bảng cho ta kết quả của sum of square (thường là không sử dụng) Chúng
ta biết được số đối tượng khảo sát là 92 Kết quả của R-squared = 0.6123, cho chúng ta biết 61% cân nặng được giải thích bằng mối liên quan tuyến tính với chiều cao
Phần dưới của bảng kết quả cho ta con số ước lượng của Y intercept - (a) (trong bảng kết quả, nó được hiểu là “_cons”) và độ dốc - β Phương trình hồi qui như sau:
cân nặng = -90.6 + 0.9 × chiều cao
Với phép kiểm H0: β = 0, số thống kê tính được t = 11.9, có p < 0.001, do đó ta loại bỏ giả thiết H0 cho rằng độ dốc bằng 0, và kết luận rằng thật sự có mối liên quan tuyến tính một cách có ý nghĩa giữa chiều cao và cân nặng
3.2 Tiên đoán kết quả sau khi chạy lệnh regression
Sau khi chúng ta chạy lệnh regress, STATA sẽ lưu trữ các hệ số được ước lượng và các
Trang 11được lưu lại trong bộ nhớ cho đến khi chúng ta chạy lệnh regression khác Các “biến số
hệ thống” này sẽ được sử dụng bởi các lệnh “predict” để tính:
• giá trị tiên đoán (predicted values),
• số dư (residuals),
• sai số chuẩn của giá trị trung bình được ước lượng của Y,
• sai số chuẩn của giá trị được ước lượng của Y
Ví dụ để tạo ra một biến số mới được gọi là “pweigh” có chứa các giá trị tiên đoán cân nặng dựa trên chiều cao trong bộ số liệu, ta dùng lệnh sau:
predict pweight
* Lưu ý: Lệnh predict không tạo ra kết quả nào hết, để thấy được kết quả của việc tạo ra pweight ta dùng lệnh sum
sum weight pweight
sum weight pweight
Variable | Obs Mean Std Dev Min Max -+ - weight | 92 64.02174 10.53198 42 95 pweight | 92 64.02174 8.24137 46.43248 77.98535
4 Hồi qui tuyến tính đa biến
Bài tập: Giả sử chúng ta muốn khảo sát cân nặng ở trẻ em suy dinh dưỡng thay đổi theo
chiều cao và tuổi như thế nào Biến số kết quả (outcome) là y = wgt và biến số giải thích
là x1 = hgt và x2 = age Một mẫu ngẫu nhiên 12 trẻ được rút ra từ số trẻ bệnh của trại A Cân nặng (wgt), chiều cao (hgt) và tuổi (age) như sau:
Cân nặng (wgt) Chiều cao (hgt) Tuổi (age)
64 57 8
71 59 10
53 49 6
67 62 11
55 51 8
58 50 7
77 55 10
57 48 9
56 42 10
51 42 6
76 61 12
68 57 9
- Lệnh sử dụng trong STATA:
+ Statistics -> Multivariate analysis -> MANOVA, multivariate regression and related -> Multivariate regression -> Nhập biến số cần chạy regression -> Submit
regress wgt hgt age
Trang 12- Kết quả có được như sau:
regress wgt hgt age
Source | SS df MS Number of obs = 12 -+ - F( 2, 9) = 15.95 Model | 692.822607 2 346.411303 Prob > F = 0.0011 Residual | 195.427393 9 21.7141548 R-squared = 0.7800 -+ - Adj R-squared = 0.7311 Total | 888.25 11 80.75 Root MSE = 4.6598 - wgt | Coef Std Err t P>|t| [95% Conf Interval] -+ - hgt | .722038 .2608051 2.77 0.022 1320559 1.31202 age | 2.050126 .9372256 2.19 0.056 -.0700253 4.170278 _cons | 6.553048 10.94483 0.60 0.564 -18.20587 31.31197 -
Kết quả cho thấy F = 346.41/21.71 = 15.96 với (2,9) độ tự do Giá trị p của F-test = 0.0011 gợi ý rằng chúng ta nên loại bỏ H0 và kết luận là có 1 tỉ lệ đáng kể thay đổi của cân nặng được giải thích bởi chiều cao và tuổi
R-squared = 0.78, cho chúng ta biết chiều cao và tuổi giải thích được 78% sự thay đổi của cân nặng được giải thích bằng mối liên quan tuyến tính với chiều cao
Adjusted R-square là tỉ lệ thay đổi của y được giải thích bằng phương trình hồi qui Ở đây, adjusted R-square = 0.73, cho thấy sau khi hiệu chỉnh R cho 2 biến số được đưa vào
mô hình, chúng ta có thể giải thích được khoảng 73% sự thay đổi của y
Phương trình hồi qui sẽ có a= 6.55, b1 = 0.72, b2 = 2.05
Điều này có nghĩa là nếu chiều cao = 0, tuổi = 0 thì cân nặng là 6.55 pounds Hoặc cứ chiều cao tăng 1cm thì cân nặng tăng 0.72 pounds (nếu tuổi giữ nguyên), hoặc nếu tuổi tăng 1 năm thì cân nặng tăng 2.95 pounds (nếu chiều cao giữ nguyên)
Trang 13BÀI TẬP THỰC HÀNH Bài tập 1
Sử dụng file “lowbwt” để trả lời những câu hỏi sau đây:
a) Tạo ra đồ thị two-way scatter plot của biến số sbp (HA tâm thu) và gestage (tuổi thai)
b) Đồ thị có đưa ra gợi ý gì về mối liên quan những biến số này không?
c) Giả sử sbp là biến số kết quả, hãy viết phương trình hồi qui thể hiện mối liên quan giữa sbp và tuổi thai Diễn giải the slope and the y-intercept of the line
d) Ở mức ý nghĩa 0.05, hãy kiểm định giả thiết H0: β = 0
e) Hãy tiên đoán HA tâm thu của thai phụ có tuổi thai là 31 tuần
Bài tập 2
1) Hãy dùng STATA để nhập số liệu sau, trong đó:
Y = Trung bình huyết áp động mạch (mm Hg)
X1 = Tuổi (năm)
X2 = Cân nặng (kg)
X3 = Diện tích bề mặt cơ thể (m2)
X4 = Thời gian bị CHA (năm)
X5 = Mạch (lần/phút)
X6 = Số đo mức độ tress
2) Những biến số nào liên quan một cách có ý nghĩa với trung bình huyết áp động mạch