Phân tích s liu và biu đồ bng R Nguyn Văn Tun
1
Phân tích s liu và biu đồ bng
Nguyn Văn Tun
Garvan Institute of Medical Research
Sydney, Australia
Phân tích s liu và biu đồ bng R Nguyn Văn Tun
2
Mc lc
1 Ti R xung và cài đặt vào máy tính 4
2 Ti R package và cài đặt vào máy tính 6
3 “Văn phm” R 7
3.1 Cách đặt tên trong R 9
3.2 H tr trong R 9
4 Cách nhp d liu vào R 10
4.1 Nhp s liu trc tiếp: c() 10
4.2 Nhp s liu trc tiếp: edit(data.frame()) 12
4.3 Nhp s liu t mt text file: read.table 13
4.4 Nhp s liu t Excel 14
4.5 Nhp s liu t SPSS 15
4.6 Thông tin v s liu 16
4.7 To dãy s bng hàm seq, repgl 17
5 Biên tp s liu 19
5.1 Tách ri s liu: subset 19
5.2 Chiết s liu t mt data .frame 20
5.3 Nhp hai data.frame thành mt: merge 21
5.4 Biến đổi s liu (data coding) 22
5.5 Biến đổi s liu bng cách dùng replace 23
5.6 Biến đổi thành yếu t (factor) 23
5.7 Phân nhóm s liu bng cut2 (Hmisc) 24
6 S dng R cho tính toán đơn gin 24
6.1 Tính toán đơn gin 24
6.2 S dng R cho các phép tính ma trn 26
7 S dng R cho tính toán xác sut 31
7.1 Phép hoán v (permutation) 31
7.2 Biến s ngu nhiên và hàm phân phi 32
7.3 Biến s ngu nhiên và hàm phân phi 32
7.3.1 Hàm phân phi nh phân (Binomial distribution) 33
7.3.2 Hàm phân phi Poisson (Poisson distribution) 35
7.3.3 Hàm phân phi chun (Normal distribution) 36
7.3.4 Hàm phân phi chun chun hóa (Standardized Normal distribution) 38
7.4 Chn mu ngu nhiên (random sampling) 41
8 Biu đồ 42
8.1 S liu cho phân tích biu đồ 42
8.2 Biu đồ cho mt biến s ri rc (discrete variable): barplot 44
8.3 Biu đồ cho hai biến s ri rc (discrete variable): barplot 45
8.4 Biu đồ hình tròn 46
8.5 Biu đồ cho mt biến s liên tc: stripcharthist 47
8.5.1 Stripchart 47
8.5.2 Histogram 48
8.6 Biu đồ hp (boxplot) 49
8.7 Phân tích biu đồ cho hai biến liên tc 50
8.7.1 Biu đồ tán x (scatter plot) 50
8.8 Phân tích Biu đồ cho nhiu biến: pairs 53
Phân tích s liu và biu đồ bng R Nguyn Văn Tun
3
8.9 Biu đồ vi sai s chun (standard error) 54
9 Phân tích thng kê mô t 55
9.1 Thng kê mô t (descriptive statistics, summary) 55
9.2 Thng kê mô t theo tng nhóm 60
9.3 Kim định t (t.test) 61
9.3.1 Kim định t mt mu 61
9.3.2 Kim định t hai mu 62
9.4 Kim định Wilcoxon cho hai mu (wilcox.test) 63
9.5 Kim định t cho các biến s theo cp (paired t-test, t.test) 64
9.6 Kim định Wilcoxon cho các biến s theo cp (wilcox.test) 65
9.7 Tn s (frequency) 66
9.8 Kim định t l (proportion test, prop.test, binom.test) 67
9.9 So sánh hai t l (prop.test, binom.test) 68
9.10 So sánh nhiu t l (prop.test, chisq.test) 69
9.10.1 Kim định Chi bình phương (Chi squared test, chisq.test) 70
9.10.2 Kim định Fisher (Fisher’s exact test, fisher.test) 71
10 Phân tích hi qui tuyến tính 71
10.1 H s tương quan 73
10.1.1 H s tương quan Pearson 73
10.1.2 H s tương quan Spearman 74
10.1.3 H s tương quan Kendall 74
10.2 Mô hình ca hi qui tuyến tính đơn gin 75
10.3 Mô hình hi qui tuyến tính đa biến (multiple linear regression) 82
11 Phân tích phương sai 85
11.1 Phân tích phương sai đơn gin (one-way analysis of variance) 85
11.2 So sánh nhiu nhóm và điu chnh tr s p 87
11.3 Phân tích bng phương pháp phi tham s 90
11.4 Phân tích phương sai hai chiu (two-way ANOVA) 91
12 Phân tích hi qui logistic 94
12.1 Mô hình hi qui logistic 95
12.2 Phân tích hi qui logistic bng R 97
12.3 Ước tính xác sut bng R 101
13 Ước tính c mu (sample size estimation) 103
13.1 Khái nim v “power” 104
13.2 S liu để ước tính c mu 106
13.4 Ước tính c mu 107
13.4.1 Ước tính c mu cho mt ch s trung bình 107
13.4.2 Ước tính c mu cho so sánh hai s trung bình 108
13.4.3 Ước tính c mu cho phân tích phương sai 110
13.4.4 Ước tính c mu để ước tính mt t l 111
13.4.5 Ước tính c mu cho so sánh hai t l 112
14 Tài liu tham kho 115
15 Thut ng dùng trong sách 117
Phân tích s liu và biu đồ bng R Nguyn Văn Tun
4
Gii thiu R
Phân tích s liu và biu đồ thường được tiến hành bng các phn mm thông
dng như SAS, SPSS, Stata, Statistica, và S-Plus. Đây là nhng phn mm được các
công ti phn mm phát trin và gii thiu trên th trường khong ba thp niên qua, và đã
được các trường đại hc, các trung tâm nghiên cu và công ti kĩ ngh trên toàn thế gii
s dng cho ging dy và nghiên cu. Nhưng vì chi phí để s dng các phn mm này
tuơng đối đắt tin (có khi lên đến hàng trăm ngàn đô-la mi năm), mt s trường đại hc
các nước đang phát trin (và ngay c mt s nước đã phát trin) không có kh năng
tài chính để s dng chúng mt cách lâu dài. Do đó, các nhà nghiên cu thng kê trên
thế gii đã hp tác vi nhau để phát trin mt phn mm mi, vi ch trương mã ngun
m, sao cho tt c các thành viên trong ngành thng kê hc và toán hc trên thế gii có
th s dng mt cách thng nht và hoàn toàn min phí.
Năm 1996, trong mt bài báo quan trng v tính toán thng kê, hai nhà thng kê
hc Ross Ihaka và Robert Gentleman [lúc đó] thuc Trường đại hc Auckland, New
Zealand phát ho mt ngôn ng mi cho phân tích thng kê mà h đặt tên là R [1]. Sáng
kiến này được rt nhiu nhà thng kê hc trên thế gii tán thành và tham gia vào vic
phát trin R.
Cho đến nay, qua chưa đầy 10 năm phát trin, càng ngày càng có nhiu nhà thng
kê hc, toán hc, nghiên cu trong mi lĩnh vc đã chuyn sang s dng R để phân tích
d liu khoa hc. Trên toàn cu, đã có mt mng lưới hơn mt triu người s dng R,
và con s này đang tăng rt nhanh. Có th nói trong vòng 10 năm na, vai trò ca các
phn mm thng kê thương mi s không còn ln như trong thi gian qua na.
Vy R là gì? Nói mt cách ngn gn, R là mt phn mm s dng cho phân tích
thng kê và v biu đồ. Tht ra, v bn cht, R là ngôn ng máy tính đa năng, có th s
dng cho nhiu mc tiêu khác nhau, t tính toán đơn gin, toán hc gii trí (recreational
mathematics), tính toán ma trn (matrix), đến các phân tích thng kê phc tp. Vì là mt
ngôn ng, cho nên người ta có th s dng R để phát trin thành các phn mm chuyên
môn cho mt vn đề tính toán cá bit.
Vì thế, nhng ai làm nghiên cu khoa hc, nht là các nước còn nghèo khó như
nước ta, cn phi hc cách s dng R cho phân tích thng kê và đồ th. Bài viết ngn
này s hướng dn bn đọc cách s dng R. Tôi gi định rng bn đọc không biết gì v
R, nhưng tôi kì vng bn đọc biết qua v cách s dng máy tính.
1. Ti R xung và cài đặt vào máy tính
Để s dng R, vic đầu tiên là chúng ta phi cài đặt R trong máy tính ca mình.
Để làm vic này, ta phi truy nhp vào mng và vào website có tên là “Comprehensive R
Archive Network” (CRAN) sau đây:
http://cran.R-project.org.
Phân tích s liu và biu đồ bng R Nguyn Văn Tun
5
Tài liu cn ti v, tùy theo phiên bn, nhưng thường có tên bt đầu bng mu t
R và s phiên bn (version). Chng hn như phiên bn tôi s dng vào cui năm 2005 là
2.2.1, nên tên ca tài liu cn ti là:
R-2.2.1-win32.zip
Tài liu này khong 26 MB, và địa ch c th để ti là:
http://cran.r-project.org/bin/windows/base/R-2.2.1-win32.exe
Ti website này, chúng ta có th tìm thy rt nhiu tài liu ch dn cách s dng
R, đủ trình độ, t sơ đẳng đến cao cp. Nếu chưa quen vi tiếng Anh, tài liu này ca tôi
có th cung cp nhng thông tin cn thiết để s dng mà không cn phi đọc các tài liu
khác.
Khi đã ti R xung máy tính, bước kế tiếp là cài đặt (set-up) vào máy tính. Để
làm vic này, chúng ta ch đơn gin nhn chut vào tài liu trên và làm theo hướng dn
cách cài đặt trên màn hình. Đây là mt bước rt đơn gin, ch cn 1 phút là vic cài đặt R
có th hoàn tt.
Sau khi hoàn tt vic cài đặt, mt icon
R 2.2.1.lnk
s xut hin trên desktop ca máy tính. Đến đây thì chúng ta đã sn sàng s dng R.
th nhp chut vào icon này và chúng ta s có mt window như sau: