Phân tích bảng đơn, bảng đôi ( 2 by 2 table), Test Khi bình phương (Chi square test) trong R

  

1. Chúng ta sẽ sử dụng bộ số liệu shapiro làm ví dụ, bộ số liệu này bao gồm một số biến số

MI Nhồi máu cơ tim, OC Sử dụng thuốc tránh thai, SMOKE Hút thuốc, AGEGROUP Nhóm tuổi, AGEMID Tuổi

shapiro
## # A tibble: 1,976 × 5
##    MI        OC        SMOKE     AGEGROUP AGEMID    
##    <dbl+lbl> <dbl+lbl> <dbl+lbl>    <dbl> <dbl+lbl> 
##  1 0 [No]    0 [No]    0 [None]         1 27 [25-29]
##  2 0 [No]    0 [No]    0 [None]         5 47 [45-49]
##  3 0 [No]    0 [No]    0 [None]         3 37 [35-39]
##  4 0 [No]    0 [No]    0 [None]         2 32 [30-34]
##  5 0 [No]    1 [Yes]   0 [None]         4 42 [40-44]
##  6 0 [No]    0 [No]    0 [None]         3 37 [35-39]
##  7 0 [No]    0 [No]    0 [None]         1 27 [25-29]
##  8 0 [No]    0 [No]    0 [None]         2 32 [30-34]
##  9 1 [Yes]   0 [No]    0 [None]         5 47 [45-49]
## 10 0 [No]    0 [No]    0 [None]         2 32 [30-34]
## # … with 1,966 more rows

2. Phân tích bảng đơn

Có nhiều cách để thực hiện, một cách khá gần gũi và giao diện giống với một số phần mềm khác thì chúng ta có thể sử dụng package summarytools

Đầu tiên chúng ta load package này để sử dụng

library(summarytools)

Để phân tích mô tả đối với biến định tính thường chúng ta sẽ sử dụng bảng đơn. Chúng ta phân tích mô tả đối với biến MI như sau:

attach(shapiro)
freq(MI)
## Frequencies  
## MI  
## Label: Myocardial infarction  
## Type: Numeric  
## 
##               Freq   % Valid   % Valid Cum.   % Total   % Total Cum.
## ----------- ------ --------- -------------- --------- --------------
##           0   1742     88.16          88.16     88.16          88.16
##           1    234     11.84         100.00     11.84         100.00
##        <NA>      0                               0.00         100.00
##       Total   1976    100.00         100.00    100.00         100.00

3. Phân tích bảng đôi 2x2

Chúng ta muốn kiểm định giả thuyết về mối liên quan giữa việc sử dụng thuốc tránh thai (biến OC) và nhồi máu cơ tim MI ở đối tượng nghiên cứu.

Thường chúng ta sẽ phân tích và sử dụng Test Khi bình phương, hoặc một số test khác trong một số trường hợp đặc biệt

Chúng ta có thể thực hiện bằng lệnh CrossTable như sau:

library(gmodels) #Package gmodels được sử dụng, nếu chưa cài đặt thìcần cài đặt trước với lệnh install.packages('gmodels') 
attach(shapiro)
CrossTable(OC, MI, prop.r = TRUE,prop.c = FALSE, prop.t = FALSE,prop.chisq = FALSE, chisq = TRUE, fisher = TRUE)
## 
##  
##    Cell Contents
## |-------------------------|
## |                       N |
## |           N / Row Total |
## |-------------------------|
## 
##  
## Total Observations in Table:  1976 
## 
##  
##              | MI 
##           OC |         0 |         1 | Row Total | 
## -------------|-----------|-----------|-----------|
##            0 |      1607 |       205 |      1812 | 
##              |     0.887 |     0.113 |     0.917 | 
## -------------|-----------|-----------|-----------|
##            1 |       135 |        29 |       164 | 
##              |     0.823 |     0.177 |     0.083 | 
## -------------|-----------|-----------|-----------|
## Column Total |      1742 |       234 |      1976 | 
## -------------|-----------|-----------|-----------|
## 
##  
## Statistics for All Table Factors
## 
## 
## Pearson's Chi-squared test 
## ------------------------------------------------------------
## Chi^2 =  5.844271     d.f. =  1     p =  0.01562785 
## 
## Pearson's Chi-squared test with Yates' continuity correction 
## ------------------------------------------------------------
## Chi^2 =  5.250078     d.f. =  1     p =  0.02194579 
## 
##  
## Fisher's Exact Test for Count Data
## ------------------------------------------------------------
## Sample estimate odds ratio:  1.683414 
## 
## Alternative hypothesis: true odds ratio is not equal to 1
## p =  0.02228029 
## 95% confidence interval:  1.058305 2.605598 
## 
## Alternative hypothesis: true odds ratio is less than 1
## p =  0.9923676 
## 95% confidence interval:  0 2.443704 
## 
## Alternative hypothesis: true odds ratio is greater than 1
## p =  0.01395443 
## 95% confidence interval:  1.139463 Inf 
## 
## 
## 

Việc tính tỷ lệ phần trăm theo cột, hàng, hay tổng chung phụ thuộc vào tỷ lệ được đưa ra để só sánh (Ví dụ: Tỷ lệ bị bệnh giữa nhóm phơi nhiễm và không phơi nhiễm thì ta tính tỷ lệ phần trăm theo hàng hoặc tỷ lệ phơi nhiễm giữa nhóm bệnh và nhóm chứng (nhóm không bệnh) thì ta tính tỷ lệ phần trăm theo cột). Tựu chung lại, phụ thuộc vào câu hỏi nghiên cứu.

Trong lệnh trên chúng ta tính tỷ lệ phần trăm theo hàng prop.r = TRUE

Cho ẩn đi tỷ lệ phần trăm theo cột prop.c = FALSE và tổng chung prop.t = FALSE, và phân phối chi-square prop.chisq = FALSE

Ngoài ra chúng ta cũng yêu cầu R cho kết quả của Chi-square test chisq = TRUE và Fisher Exact test fisher = TRUE

DONE

Nhận xét

Bài đăng phổ biến từ blog này

EPIDATA 3.1- Phần mềm thống kê Y sinh học

Phân tích bảng chéo Crosstabs trong SPSS

Download SPSS MAC - Cài SPSS cho Macbook