661 likes | 1.17k Views
Phân tích thống kê mô tả. Nguyễn Văn Tuấn Nguyễn Đình Nguyên Garvan Institute of Medical Research, Sydney, Australia. Tổng quan. Đo lường Quần thể và mẫu nghiên cứu Tóm tắt số liệu: trung bình, phương sai, độ lệch chuẩn Phân tích biểu đồ Hoán chuyển dữ liệu. Thang đo lường.
E N D
Phân tích thống kê mô tả Nguyễn Văn Tuấn Nguyễn Đình Nguyên Garvan Institute of Medical Research, Sydney, Australia
Tổng quan • Đo lường • Quần thể và mẫu nghiên cứu • Tóm tắt số liệu: trung bình, phương sai, độ lệch chuẩn • Phân tích biểu đồ • Hoán chuyển dữ liệu
Thang đo lường • Nhìn chung, các số liệu quan sát được đều có thể lượng hoá bằng thang tỷ lệ (ratio) • Các số liệu đinh tính thường đo lường bằng các khoảng (interval) • Ở đây chúng ta sẽ chú trọng hai loại số liệu chính là số liệu phân nhóm so với số liệu phân bố liên tục (ordinal, interval, ratio) Biến Phân nhóm Liên tục thứ tự Theo khoảng tỷ lệ
Đo lường trình tự • Trình tự (Ordinal): Designates an ordering; quasi-ranking • Các khoảng giữa các vị trí không nhất thiết bằng nhau. • Sắp xếp theo thứ tự Thứ nhất Thứ hai Thứ 3 Thứ 4 1 2 3 4 5 6 7 8 giờ
Khoảng và Tỷ lệ • Khoảng (interval): Sắp xếp thành từng khoảng bằng nhau • Khoảng cách giữa từng đoạn luôn bằng nhau • Thí dụ: Các test IQ thông thường luôn sắp thành những khoảng bằng nhau • Tỷ lệ (ratio): Sắp xếp thành những khoảng cách bằng nhau theo trình tự bao gồm cả giá trị 0
Thống kê: Ước lượng giá trị chưa biết Quần thể Mẫu 3 Mẫu 1 Mẫu 2
Ước tính trung bình quần thể Chiều cao trung bình của quần thể = 160 cm Độ lệch chuẩn = 5.0 cm n mean sd 10 161.5 4.5 100 160.4 5.2 1000 160.1 5.0 10000 160.1 5.0 ht1 <- rnorm(10, mean=160, sd=5) ht2 <- rnorm(100, mean=160, sd=5) ht3 <- rnorm(1000, mean=160, sd=5) ht4 <- rnorm(10000, mean=160, sd=5) Nhận xét: Cỡ mẫu càng lớn, ước lượng càng chính xác
Ước tính tỷ lệ trong quần thể Tỷ lệ nam giới trong quần thể = 0.50 Lấy ra một cỡ mẫu n ngưòi, mỗi lần lấy ra k người. Ghi nhận lại số nam giới trong mỗi lần lấy đó rbinom(n, k, prob) Tỷ lệ nam giới ghi nhận (p) 0.600 0.507 0.500 males <- rbinom(10, 10, 0.5) males <- rbinom(100, 20, 0.5) males <- rbinom(1000, 100, 0.5) Nhận xét: Cỡ mẫu càng lớn, ước lượng càng chính xác
Tóm tắt một biến số liên tục • Đo độ tập trung: • Trung bình (mean), trung tuyển (median), trung vị (mode) • Đo độ tán xạ hay dao động: • Phương sai, độ lệch chuẩn, sai số chuẩn • Miền giữa hai khoảng tứ phân vị (interquartile range) Lệnh trong R Basic length(x), mean(x), median(x), var(x), sd(x) summary(x) Package Library(pastecs) Stat.desc(object)
Ví dụ R set.seed (7438); height <- rnorm(1000, mean=55, sd=8.2) mean(height) [1] 54.8017 median(height) [1] 54.90927 var(height) [1] 65.80294 sd(height) [1] 8.111901 summary(height) Min. 1st Qu. Median Mean 3rd Qu. Max. 31.02 49.72 54.91 54.80 60.10 78.91 Library(pastecs) stat.desc(height) nbr.val nbr.null nbr.na min max 1000.00 0.00 0.00 31.02 78.91 range sum median mean SE.mean 47.88 54801.70 54.91 54.80 0.26 CI.mean.0.95 var std.dev coef.var 0.50 65.80 8.11 0.15
Tóm tắt bằng biểu đồ: Biểu đồ hộp boxplot(height) 95% percentile 75% percentile Median, 50% perc. 25% percentile 5% percentile
Vai trò của trung bình và độ lệch chuẩn • “Trong quần thể người Việt nam ở tuổi 30 trở lên, cân nặng trung bình là 55 kg và độ lệch chuẩn là 8.2 kg.” • Hai con số này có nghĩa là gì? • 68% số người trong lứa tuổi này sẽ có cân nặng nằm trong khoảng từ 55 +/- 8.2*1 = 46.8 đến 63.2 kg • 95% số người trong lứa tuổi này sẽ có cân nặng nằm trong khoảng từ 55 +/- 8.2*1.96 = 38.9 đến 71.1 kg
Vai trò của trung bình và độ lệch chuẩn • Phân bố về cân nặng của quần thể đó có thể biểu diễn bằng giản đồ cột: 1.96SD 1SD
Tóm tắt số liệu phân nhóm • Số liệu phân nhóm: • Giới tính: nam, nữ • Chủng tộc: Á, da trắng, Phi… • Số liệu bán định lượng: • Mức độ nặng của bệnh: nhẹ, trung bình, nặng • Các giai đoạn ung thư: I, II, III, IV • Sở thích: rất ghét, không thích, bình thường, thích, rất thích
Trung bình và phương sai của tỷ lệ • Đối với một người bệnh i, xác suất cho người này hài lòng với cuộc sống sau mổ là pi. Giả định các bệnh nhân sau mổ một loại bệnh nào đó là độc lập với nhau thì pi = p. • Phương sai của pilà var(pi) = p(1-p) • Do đó có một mẫu n bệnh nhân sau mổ một loại bệnh, xác suất cho bệnh nhân hài lòng với cuộc sống sau mổ được tính là: Và khi đó phương sai của p_bar là:
Xấp xỉ phân phối chuẩn của một phân phối nhị thức • Đối với một người bệnh i, xác suất cho người này hài lòng với cuộc sống sau mổ là pi. Giả định các bệnh nhân sau mổ một loại bệnh nào đó là độc lập với nhau thì pi = p. • Phương sai của pi là var(pi) = p(1-p) Do đó có một mẫu n bệnh nhân sau mổ một loại bệnh, xác suất cho bệnh nhân hài lòng với cuộc sống sau mổ được tính là: Và khi đó phương sai của p_bar là: Và độ lệch chuẩn:
Ví dụ • 10 người mổ, 8 người hài lòng chất lượng cuộc sống. • Tỷ lệ hài lòng: p = 0.8 • Phương sai: var(p) = 0.8(0.2)/10 = 0.016 • Độ lệch chuẩn củap: s = 0.126 • 95% CI của p: 0.8 + 1.96(0.126) = 0.55 đến 1.00
Paired t-test • Giả định: • Biến liên tục • Phân phối chuẩn • Hai mẫu KHÔNG độc lập với nhau
Paired t-test – ví dụ • Vấn đề: Để xem độ sai lệch giữa hai cân. 12 bệnh nhi được yêu cầu cân làm hai lần, mỗi lần với một cân khác nhau, và kết quả thu được như sau: Results: BN Cân1 Cân2 1 20 22 2 18 19 3 19 17 4 22 18 5 17 21 6 20 23 7 19 19 8 16 20 9 21 22 10 17 20 11 23 27 12 18 24
Paired t-test • Khác biệt trung bình D = x1-x2 • Phương sai của D: • T-statistics: • Tra bảng T với (n-1) bậc tự do • T >2 có ý nghĩa thống kê (p <0.05)
Paired t-test – phân tích Mean difference: 1.83, SD: 2.82 Standard error (SE): SD/sqrt(n) = 2.82/sqrt(12) = 0.814 T-test = (1.83 – 0)/0.814 = 2.248 P-value = 0.0459 Kết luận: Có sự khác biệt có ý nghĩa thống kê về số đo khi cân một bệnh nhân bằng hai cân khác nhau.
Paired t-test – Phân tích bằng R can1 < -c(20,18,19,22,17,20,19,16,21,17,23,18) can2 < -c(22,19,17,18,21,23,19,20,22,20,27,24) t.test(can1, can2, paired=TRUE) data: red and white t = -2.2496, df = 11, p-value = 0.04592 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -3.6270234 -0.0396433 sample estimates: mean of the differences -1.833333
Two-sample t-test (unpaired t-test) Khác biệt trung bình: D = x – y Phương sai của D: Mẫu Nhóm 1 Nhóm 2 1 x1y1 2 x2y2 3 x3y3 4 x4y4 5 x5y5 … … n xnyn Cỡ mẫun1n2 Trung bình xy SD sxsy T-statistic: 95% Confidence interval:
Một ví dụ về so sánh hai nhóm độc lập Chiều cao trung bình (cm) của hai nhóm trẻ ở vùng nông thôn (A) và thành thị (B) A B 100 122 108 130 119 138 127 142 132 152 135 154 136 176 164 N 8 7 Mean 127.6 144.9 SD 19.6 17.8 Khác biệt về trung bình: d = 127.6 – 144.9 = -17.3 Phương sai của khác biệt: T-statistic: 95% Khoảng tin cậy:
Ví dụ thực hành: so sánh hai nhóm 20 trẻ nam và nữ trong nghiên cứu có tuổi lần lượt là: ID Nam Nu 1 3 3 2 7 1 3 1 2 4 9 4 5 3 5 6 4 2 7 1 2 8 2 5 9 6 3 10 7 2 ID Nam Nu 11 5 3 12 8 4 13 5 2 14 9 3 15 4 5 16 6 4 17 4 3 18 3 1 19 9 3 20 5 2
Unpaired t-test trong R nam<-c(3,7,1,9,3,4,1,2,6,7,5,8,5,9,4,6,4,3,9,5) nu<-c(3,1,2,4,5,2,2,5,3,2,3,4,2,3,5,4,3,1,3,2) t.test(nam, nu) Welch Two Sample t-test data: a and b t = 3.3215, df = 27.478, p-value = 0.002539 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: 0.8037895 3.3962105 sample estimates: mean of x mean of y 5.05 2.95 Kết luận: Có sự khác biệt có ý nghĩa thống kê của các trị số trung bình tuổi của hai nhóm giới tính, trong đó nam có tuổi trung bình lớn hơn nữ
Hoán chuyển số liệu: hiệu ứng nhân • Số liệu dưới đây là lượng lysozyme trong dịch dạ dày của 29 bệnh nhân bị loét dạ dày và của 30 người chứng. Liệu có sự khác nhau về lượng lysozyme trong dịch dạ dày của hai nhóm này không? Nhóm bệnh: 0.2 0.3 0.4 1.1 2.0 2.1 3.3 3.8 4.5 4.8 4.9 5.0 5.3 7.5 9.8 10.4 10.9 11.3 12.4 16.2 17.6 18.9 20.7 24.0 25.4 40.0 42.2 50.0 60.0 Nhóm chứng: 0.2 0.3 0.4 0.7 1.2 1.5 1.5 1.9 2.0 2.4 2.5 2.8 3.6 4.8 4.8 5.4 5.7 5.8 7.5 8.7 8.8 9.1 10.3 15.6 16.1 16.5 16.7 20.0 20.7 33.0
Unpaired t-test , sử dụng R g1 <- c( 0.2, 0.3, 0.4, 1.1, 2.0, 2.1, 3.3, 3.8, 4.5, 4.8, 4.9, 5.0, 5.3, 7.5, 9.8, 10.4, 10.9, 11.3, 12.4, 16.2, 17.6, 18.9, 20.7, 24.0, 25.4, 40.0, 42.2, 50.0, 60) g2 <- c(0.2, 0.3, 0.4, 0.7, 1.2, 1.5, 1.5, 1.9, 2.0, 2.4, 2.5, 2.8, 3.6, 4.8, 4.8, 5.4, 5.7, 5.8, 7.5, 8.7, 8.8, 9.1, 10.3, 15.6, 16.1, 16.5, 16.7, 20.0, 20.7, 33.0) t.test(g1, g2) data: g1 and g2 t = 2.0357, df = 40.804, p-value = 0.04831 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: 0.05163216 13.20239083 sample estimates: mean of x mean of y 14.310345 7.683333
Khảo sát số liệu P <-par(mfrow=c(1,2)) hist(g1) hist(g2) par(p) Group 1: mean(g1) = 14.3 sd(g1) = 15.7 Group 2: mean(g2) = 7.7 sd(g2) = 7.8
Kiểm định Shapiro-Wilk • Để xem phân phối có tuân theo luật chuẩn hay không. • Giả thuyết là phân phối g1, g2 tuân theo luật chuẩn (p >0.05), nếu kết quả thu được p <0.05 không tuân theo luật chuẩn. • Cần chú ý: các test này rất nhạy nên cần phải xem xét các yếu tố khác: độ dốc (skewness) và độ nhọn (kurtosis) của đường cong phân phối đó. Shapiro.test(g1) Shapiro-Wilk normality test data: g1 W = 0.8036, p-value = 9.697e-05 shapiro.test(g2) Shapiro-Wilk normality test data: g2 W = 0.8338, p-value = 0.0002888
basicStats(g1,ci=0.95) g1 nobs 29.000000 NAs 0.000000 Minimum 0.200000 Maximum 60.000000 1. Quartile 3.800000 3. Quartile 18.900000 Mean 14.310345 Median 9.800000 Sum 415.000000 SE Mean 2.922953 LCL Mean 8.322947 UCL Mean 20.297742 Variance 247.765961 Stdev 15.740583 Skewness 1.420910 Kurtosis 1.104822 basicStats(g2,ci=0.95) g2 nobs 30.000000 NAs 0.000000 Minimum 0.200000 Maximum 33.000000 1. Quartile 1.925000 3. Quartile 10.000000 Mean 7.683333 Median 5.100000 Sum 230.500000 SE Mean 1.433179 LCL Mean 4.752153 UCL Mean 10.614513 Variance 61.620057 Stdev 7.849844 Skewness 1.351903 Kurtosis 1.432079 Kiểm tra lại độ skewness (=0), kurtosis (=1) library(fBasics)
Phân tích lại số liệu lysozyme: hoán chuyển log.g1 <- log(g1) log.g2 <- log(g2)
basicStats(log.g1,ci=0.95) log.g1 nobs 29.000000 NAs 0.000000 Minimum -1.609438 Maximum 4.094345 1. Quartile 1.335001 3. Quartile 2.939162 Mean 1.921094 Median 2.282382 Sum 55.711719 SE Mean 0.275081 LCL Mean 1.357615 UCL Mean 2.484572 Variance 2.194420 Stdev 1.481358 Skewness -0.734895 Kurtosis -0.136793 basicStats(g2,ci=0.95) g2 nobs 30.000000 NAs 0.000000 Minimum 0.200000 Maximum 33.000000 1. Quartile 1.925000 3. Quartile 10.000000 Mean 7.683333 Median 5.100000 Sum 230.500000 SE Mean 1.433179 LCL Mean 4.752153 UCL Mean 10.614513 Variance 61.620057 Stdev 7.849844 Skewness 1.351903 Kurtosis 1.432079 Kiểm tra lại độ skewness (=0), kurtosis (=1) library(fBasics)
Kiểm định Shapiro-Wilk shapiro.test(log.g1) Shapiro-Wilk normality test data: log.g1 W = 0.938, p-value = 0.08868 shapiro.test(log.g2) Shapiro-Wilk normality test data: log.g2 W = 0.9555, p-value = 0.2372
Phân tích lại số liệu lysozyme t.test(log.g1, log.g2) data: log.g1 and log.g2 t = 1.406, df = 55.714, p-value = 0.1653 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -0.2182472 1.2453165 sample estimates: mean of x mean of y 1.921094 1.407559 exp(1.921-1.407) = 1.67 Trị số lysozyme của nhóm bệnh nhân cao hơn nhóm chứng 1.67 lần hay 67%, tuy nhiên không có ý nghĩa thống kê
So sánh hai tỷ lệ - lý thuyết Nhóm 1 2 ____________________________________________ Cỡ mẫun1n2 Số lượng dữ kiện e1e2 Tỷ lệ xuất hiện dữ kiệnp1p2 Khác biệt: D = p1 – p2 SE của D: SE = [p1(1–p1)/n1 + p2(1–p2)/n2]1/2 Z = D / SE 95% CI: D+ 1.96(SE) Với (n1 + n2) > 20, và nếu Z > 2, có khả năng loại bỏ giả thuyết
Kiểm định sự khác biệt giữa 2 tỷ lệ P1 = tỷ lệ nhóm 1 P2 = tỷ lệ nhóm 2 N1= cỡ mẫu nhóm 1 N2= cỡ mẫu nhóm 2 D=p1-p2 Phương sai của d: Z-test: d = 0.268 – 0.211 = 0.057 Phương sai của d: s2 = 0.000238 + 0.000152 = 0.000391 z-test: z = 0.057 / sqrt(0.00391) = 2.87 Có ý nghĩa thống kê
Ví dụ so sánh hai tỷ lệ Phân tích Khác biệt: D = 0.90 – 0.36 = 0.54 SE (D) = [0.9(0.1)/100 + 0.36(0.64)/100]1/2 = 0.057 Z = 0.54 / 0.057 = 9.54 95% CI: 0.54 + 1.96(0.057) 0.43 to 0.65 Kết luận: Loại bỏ giả thuyết, có nghĩa là tỷ lệ tử vong giữa hai nhóm phơi nhiễm khác nhau có ý nghĩa thống kê. Tỷ lệ tử vong trong 30 ngày (%) của 100 con chuột cống cho phơi nhiễm với heroin và cocaine là Nhóm Heroine Cocaine __________________________________________ Cỡ mẫu 100 100 Số chuột chết 90 36 Tỷ lệ chết 0.90 0.36
So sánh hai tỷ lệ sử dụng R events <- c(90, 36) total <- c(100, 100) prop.test(events, total) 2-sample test for equality of proportions with continuity correction data: deaths out of total X-squared = 60.2531, df = 1, p-value = 8.341e-15 alternative hypothesis: two.sided 95 percent confidence interval: 0.4190584 0.6609416 sample estimates: prop 1 prop 2 0.90 0.36
Kiểm định khác biệt tỷ lệ trên 2 nhóm: Chi (Kai) bình phương Lượng cà phê tiêu thụ 1- 151- 300- Không 150 300 900 Tổng ________________________________________ Tình trạng hôn nhân Vợ chồng 652 1537 598 242 3029 Ly dị 36 46 38 21 141 Độc thân 218 327 106 67 718 Tổng 906 1910 742 330 3888 652/3029=0.22 1537/3029=0.51 598/3029=0.20 242/3029=0.08 36/141=0.26 46/141=0.33 38/141=0.27 21/141=0.15 218/718=0.30 327/718=0.46 106/718=0.15 67/718=0.09 906/3888=0.23 1910/3888=0.49 742/3888=-.19 330/3888=0.08 Tỷ lệ theo hàng Vợ chồng 0.22 0.51 0.20 0.08 100 Ly dị 0.26 0.33 0.27 0.15 100 Độc thân 0.30 0.46 0.15 0.09 100 Tổng 0.23 0.49 0.19 0.08 100
Kiểm định khác biệt tỷ lệ trên 2 nhóm: Chi (Kai) bình phương Tình trạng Lượng cà phê tiêu thụ hôn nhân 1- 151- 300- Không 150 300 900 Tổng ________________________________________ Tần suất quan sát Vợ chồng 652 1537 598 242 3029 Ly dị 36 46 38 21 141 Độc thân 218 327 106 67 718 Tổng 906 1910 742 330 3888 3029/3888*906=705.8 3029/3888*1910=1488 3029/3888*742=578.1 3029/3888*330=257.1 141/3888*906=32.9 141/3888*1910=69.3 141/3888*742=26.9 141/3888*330=12.0 718/3888*906=167.3 718/3888*1910=352.7 718/3888*742=137.0 718/3888*330=60.9 Tình trạng Lượng cà phê tiêu thụ hôn nhân1- 151- 300- Không 150 300 900 Tổng _______________________________________________ Tần suất kỳ vọng Vợ chồng 705.8 1488 578.1 257.1 3029 Ly dị 32.9 69.3 26.9 12.0 141 Độc thân 167.3 352.7 137.0 60.9 718 Tổng 906 1910 742 330 3888
Test for Difference Among Proportions Lượng cà phê tiêu thụ 1- 151- 300- Không 150 300 900 _______________________________________________ Vợ chồng 652 1537 598 242 O (quan sát) (705.8) (1488) (578.1) (257.1) E (kỳ vọng) Ly dị 36 46 38 21 O (32.9) (69.3) (26.9) (12.0) E Độc thân 218 327 106 67 O (167.3) (352.7) (137.0) (60.9) E (652-705.8)2 / 705.8 = 4.11 (1537 – 1488)2 / 1488 = 1.61 …. Chisq = 51.6 df = 3x2=6 X2 = 1.63 for a=0.05 (O - E)2/E Vợ chồng 4.11 1.61 0.69 0.89 7.30 Ly dị 0.30 7.82 4.57 6.82 19.51 Độc thân 15.30 1.88 7.02 0.60 24.86 Tổng 19.77 11.31 12.28 8.31 51.66
So sánh tỷ lệ trên 2 nhóm – Sử dụng R (số liệu igf) table(sex, ethnicity) ethnicity sex African Asian Caucasian Others Female 4 43 22 0 Male 4 17 8 2 females <- c(4, 43, 22, 0) total <- c(8, 60, 30, 2) prop.test(females, total) #or chisq.test(sex,ethnicity)
So sánh tỷ lệ trên 2 nhóm – Phân tích Chi (Kai) bình phương 4-sample test for equality of proportions without continuity correction data: females out of total X-squared = 6.2646, df = 3, p-value = 0.09942 alternative hypothesis: two.sided sample estimates: prop 1 prop 2 prop 3 prop 4 0.5000000 0.7166667 0.7333333 0.0000000 Warning message: Chi-squared approximation may be incorrect in: prop.test(females, total) Kết quả phân tích sử dụng Chi-squared với một trong các phần tử có số liệu < 5 sẽ đưa kết quả không chính xác. Khi đó nên dùng Fisher’s exact test
So sánh tỷ lệ trên 2 nhóm – Phân tích dùng Fisher’s exact Fisher's Exact Test for Count Data data: sex and ethnicity p-value = 0.1048 alternative hypothesis: two.sided Kết quả phân tích sử dụng Chi-squared với một trong các phần tử có số liệu < 5 sẽ đưa kết quả không chính xác. Khi đó nên dùng Fisher’s exact test.