BÀI THỰC HÀNH XÁC SUT THỐNG KÊ
MỤC LỤC
I. Giới thiệu vphần mềm R
1. Giới thiệu chung về phn mềm R
2. Tính năng của R
II. Sử dụng phần mềm R trong nh toán với Xác suất, Thống kê.
1. Các lệnh cơ bản về xác suất
2. Sử dụng phần mềm R trong nh toán với Thống kê
III. Áp dụng phần mềm R vào bài tập của sinh viên khoa Dược
1. Phần xác suất
2. Phần thống kê
IV. Bài tập thực hành thống kê mô tả trong R
I. Giới thiệu vphần mềm R
1. Giới thiệu chung về phần mềm R
R là một phần mềm mã nguồn mở (cũng được gọi là ngôn ngữ R, lập trình R, thống kê R…) sử
dụng cho phân ch thống kê và vbiểu đồ. Về bản chất, R là ngôn ngữ máy nh đa năng có thể
sử dụng cho nhiều mục êu khác nhau, từ nh toán đơn giản, toán học giải trí, nh toán ma
trận đến các phân ch thống kê phức tạp. Vì là một ngôn ngữ, cho nên người ta có thể sử dụng
R để phát triển thành các phần mềm chuyên môn cho một vấn đề nh toán cá biệt.
Vì nh hữu dụng và là mã nguồn mở cho nên trong những năm gần đây phần mềm R đã
được phát triển rất mạnh mẽ. Càng ngày càng có nhiều nhà thống kê học, toán học, nghiên cứu
trong mọi lĩnh vực đã chuyển sang sử dụng R để phân ch dữ liệu khoa học. R đang được đánh
giá là một phần mềm thống kê miễn phí rất thành công.
2. Tính năng của R
R cho phép giải quyết một khối lượng lớn những bài toán trong nh toán xác suất, nh toán
và phân ch thống kê và đồ thị. Các bài toán thống kê phổ biến như hồi quy tuyến nh và phi
tuyến, ước lượng và kiểm định thống kê cổ điển, phân ch chuỗi thời gian,…đều có thể đưc
thực hiện trên R.
II. Sử dụng phần mềm R trong nh toán với Xác suất, Thống kê.
1. Các lệnh cơ bản về xác suất:
Hoán vị, chỉnh hợp, tổ hợp
Phép toán
Hàm lệnh
Hoán vị
prod(n:1)
Chỉnh hợp
permutaons(n,k)
Tổ hợp
choose(,.k)
Chọn mẫu ngẫu nhiên
Cách chọn mẫu cỡ n trong tổng thể N
Hàm trong R
Chọn mẫu ngẫu nhiên không hoàn lại
sample(1:N,n)
Chọn mẫu ngẫu nhiên có hoàn lại
sample(1:N,n, replace = TRUE)
2. Sử dụng phần mềm R trong nh toán với Thống kê
Các hàm số trong thống kê
Tính toán trong thống kê
Hàm trong phần mềm R
Nhập số liệu của một đối tượng
Số nh nhất của đối tượng
Số lớn nhất của đối tượng
Tính tổng các số hạng của đối tượng
Tính số trung bình của các số liệu
Tính phương sai
Tính độ lệch chuẩn
Tính trung vị
Tính số các số hạng của một đối tượng
Lập bảng tần số từ dữ liệu
Từ dãy các số liệu rời rạc ta muốn lập
bảng tần số theo khoảng
Hiệp phương sai của hai biến số x và y
Hệ số tương quan của hai biến số x và y
Hiệp phương sai của các biến số trong X
c()
min()
max()
sum()
mean()
var()
sd()
median()
length()
table()
cut()
cov(x,y)
cor(x,y)
cov(X) cor(X)
Hệ số tương quan của các biến số trong
X
Các phân phối thường dùng trong Thống kê
Phân phối
Xác suất ch lũy
P( X x)
Phân vị P(
Xx) = p
Ngẫu nhiên
Chuẩn
pnorm(q,mean,sd)
qnorm(p,mean,sd)
rnorm(n,mean,sd)
T
pt(q,df)
qt(p,df)
rt(n,df)
F
pf(q,df1,df2)
qf(p,df1,df2)
rf(n,df1,df2)
χ
2
pchi(q,df)
qchisq(p,df)
rchisq(n,df)
Nhthức
pbinom(q,n,p)
qbinom(p,n,p)
rbinom(k,n,prob)
Poisson
ppois(q,
λ
)
qpois(p,
λ
)
rpois(n,
λ
)
Exponenal
pexp(q,
λ
)
qexp(p,
λ
)
rexp(n,
λ
)
Đều U(a,b)
punif(q,a,b)
qunif(p,a,b)
runif(n,a,b)
Một số hàm lệnh của phần mềm R trong kiểm định và phân ch hồi quy
Kiểm định
Hàm trong phần mềm R
Kiểm định t - một mẫu
t.test()
Kiểm định t – hai mẫu
t.test(x~y)
Kiểm định t – cho các biến số theo cặp
(paired, t.test)
Kiểm định tỉ lệ; So sánh 2 tỉ lệ
prop.test; binom.test()
Kiểm định Chi bình phương ( χ
2
)
chisq.test()
Kiểm định Fisher
sher.test()
Kiểm định nhị thức
binom.test()
Kiểm định chuẩn (0,1)
z.test()
Kiểm định tương quan hai biến x và y
cor.test(x,y)
Kiểm định F về tỉ số hai phương sai
var.test(x,y)
Hệ số tương quan, cỡ mẫu, và các giá trị xác suất
của data.frame hoặc ma trận X
library(psych)
corr.test(X)
Hệ số tương quan của data.frame hoặc ma trận X
pairs.panels()
Hồi quy tuyến nh hai biến
lm(y~x)
Hồi quy tuyến nh nhiều biến
lm(y~x1+x2+x3)
Shapiro – Wilk test về nh chuẩn
shapiro.test()
III. Áp dụng ch hợp phần mềm R vào bài tập của sinh viên Dược
1.Phần xác suất
Chương 1,2,3
Ví dụ 1: Một học sinh xếp 10 quyển sách lên kệ sách. Hỏi có bao nhiêu cách sắp
xếp?
Gii:
> prod(10:1)
[1] 3628800
Ví dụ 2: Một nhóm trong lớp học có 6 nam và 4 nữ, chọn ra 3 bạn để đi vệ sinh.
Hỏi có bao nhiêu cách chọn?
Gii:
choose(10,3)
[1] 120
Ví dụ 3: Một bà mẹ dự sinh 3 người con( mỗi lần sinh một đứa con), giả sử xác
suất được người con gái là 0.48. Tính xác suất để trong 3 lần sinh đó có ba con gái
Trả lời
> dbinom(3,3,0.48)
[1] 0.110592
Ví dụ 4: Xác suất mắc bệnh sau khi dùng vacxin là 0,001. Dùng vacxin cho 5000 trẻ
em. Tìm xác suất để 5 trẻ bị bệnh khi dùng vacxin
Gii:
> dpois(5,5)
[1] 0.1754674
Ví dụ 5: Giả sử độ cao của trẻ em từ độ tuổi 8 đến 10 tuổi là biến ngẫu nhiên
phân phối chuẩn ( 𝜇,𝜎
2
). Biết chiều cao trung bình là = 1,3 m và độ lệch chun
= 0,01. Tính xác suất để trem có độ cao nằm trong khoảng (1,2m; 1,4m).
Gii:
> pnorm((1.4-1.3)/sqrt(0.01))-pnorm((1.2-1.3)/sqrt(0.01))
[1] 0.6826895
2.Phần thống kê
Ví dụ 6: Đo chiều cao X của 100 sinh viên của một trường, ta thu được bảng số
liệu sau:
Chiều cao (cm)
156
160
164
168
172
176
180
Số sinh viên
10
14
26
28
12
8
2
Tính trung bình và phương sai mẫu?
> Chieucao=c(156,160,164,168,172,176,180)
> Sosinhvien=c(10,14,26,28,12,8,2)
> x=rep(Chieucao,Sosinhvien)
> mean(x)
[1] 166
> var(x)
[1] 33.778
> sd(x)
[1] 5.812
Ví dụ 7: Xét nghiệm Cholesterol toàn phần X (mmol/lít) cho 500 người ta thu được
kết quả:
Khoảng Cholesterol
35-40
40-45
45-50
50-55
55-60
60-65
65-70
Trung tâm lớp x
i
37.5
42.5
47.5
52.5
57.5
62.5
67.5
Số người n
i
19
42
125
155
83
55
21
Với độ n cậy 95% hãy ước lượng khoảng n cậy của lượng Cholesterol trung bình
của những người ở độ tuổi trên Gii:
> luongCholesterol=c(37.5,42.5,47.5,52.5,57.5,62.5,67.5)
> songuoi=c(19,42,125,155,83,55,21)
> x=rep(luongCholesterol,songuoi)
> t.test(x,conf.level=0.95)
One Sample t-test data: x
t = 169.32, df = 499, p-value < 2.2e-16
alternave hypothesis: true mean is not equal to 0
95 percent condence interval: 51.79198
53.00802 sample esmates:
mean of x
52.4
Ví dụ 8: Hàm lượng X (mg/viên) Teracyclin loại 0,05 được quy định là 50(mg/viên).
Kiểm tra hàm lượng của một lô thuốc ta nhận được kết quả sau:
X (mg/viên)
49,8
49,6
49,5
50,1
49,7
49,9
49,8
50,5
50,4
50,0
Với mức ý nghĩa 5%, hãy kiểm tra xem hàm lượng lô thuốc trên có đáp ứng được yêu cầu
quy định không?
Gii:
> library(BSDA)
> x=c(49.8,49.6,49.5,50.1,49.7,49.9,49.8,50.5,50.4,50.0)
> t.test(x, mu=50, alt = "two.sided")
One Sample t-test data: x t = -0.67742,
df = 9, p-value = 0.5152
alternave hypothesis: true mean is not equal to 50 95 percent condence
interval:
49.69624 50.16376
sample esmates:
mean of x
49.93
Ví dụ 3: Định lượng hàm lượng của Tetracyclin clorhydrat X trong 20 viên thuốc
loại 500mg và thu được kết quả sau:
Hàm lượng
102
103
104
95
96
97
98
99
Số viên
1
2
4
5
3
2
2
1
Với độ n cậy 95%, hãy xác định khoảng n cậy cho hàm lượng trung bình của
Tetracyclin clorhydrat trong lô thuốc trên.
Gii:
> library(BSDA)
> hamluong=c(102,103,104,95,96,97,98,99)
> sovienthuoc=c(1,2,4,5,3,2,2,1)
> x=rep(hamluong,sovienthuoc)
> t.test(x,conf.level=0.95)
One Sample t-test
data: x t = 120.09, df = 19, p-value < 2.2e-16
alternave hypothesis: true mean is not equal to 0
95 percent condence interval: 97.07806
100.52194 sample esmates:
mean of x
98.8
IV. Bài tập thực hành thống kê mô tả trong R
Câu hỏi 1: Trong phần mềm R hãy đọc tệp dữ liệu duong1.csv cho trước trong thư mục
“thuchanhr10.4” ở ổ C rồi ghi lại dưới dạng một data.frame chuyên dụng trong phần mềm R với
tên duong1.rda
Trả lời:
> setwd("d:/thuchanhr10.4")
> duong1<-read.csv('duong1.csv',row.names=1)
> save(duong1,le="duong1.rda")
> View(duong1)
Câu hỏi 2: Hãy mô tả chung về tệp dữ liệu duong1.rda? (Như cấu trúc; số chiều;…)
Trả lời:
Trong phần mềm R nhập và thực thi lần lượt các lệnh:
> aach(duong1)
> str(duong1)
> dim(duong1)
Báo cáo kết quả trong phần mềm R
Câu hỏi 3: Hãy tạo biến số có tên là reduce để phản ánh mức giảm của chỉ số đường huyết của
các bệnh nhân sau quá trình điều trị? Ý nghĩa của biến số này theo giá trị âm/dương? Theo
anh/chị ên lượng thì độ tuổi (age) hoặc bệnh nền (base) sẽ có tác động như thế nào tới kết
quđiều trị?
Trả lời :
> reduce<- before-aer
> head(reduce,10)
- Vì reduce đo mức giảm của chỉ số đường huyết cho nên khi reduce có giá trị dương
(chẳng hạn5.2) có nghĩa là nhờ điều trị chỉ số đường huyết của bệnh nhân tương ứng đã giảm
(được 5.2). Còn khi reduce có giá trị âm (chẳng hạn -0.9) có nghĩa là điều trị không hiệu quả vì
chỉ số đường huyết của bệnh nhân tương ứng đã tăng 0.9 (giảm âm).
- Theo logic tự nhiên, người có tuổi tác (age) cao, hoặc đang có bệnh nền (base= “yes”),
thì kết quả điều trị sẽ kém hiệu quả hơn so với trường hợp bệnh nhân còn trẻ hoặc không có
bệnh nền.
Câu hỏi 4: Hãy tạo biến có tên bmi để đo chỉ khối cơ thể của mỗi bệnh nhân? Theo ên lượng
thì bmi có tương quan như thế nào với chiều hướng tốt của điều trị?
Trả lời:
> bmi<-weight/height^2
- Theo phân loại của Hiệp hội đái đường các nước châu Á (IDI & WPRO), chỉ số bmi của
người châu Á từ 18,50 đến 22,9 kg/m2 là người có cân nặng bình thường; bmi dưới 18,5 là nhẹ
cân, từ 23-24,9 là thừa cân; bmi từ 25 trở lên là béo phì và dễ mắc bệnh tật. Do đó với bmi từ
25 trở lên và nếu nó càng lớn thì càng không tốt cho việc điều trị bệnh tật nói chung và bệnh
ểu đường nói riêng.
Câu hỏi 5: Hãy cho biết tổng quan về các biến với các quan sát trong tệp dữ liệu tệp dữ liệu
duong1.rda (Như giá trị lớn nhất, giá trị nhnhất, giá trị trung bình, Median…) Trả lời:
Qua bảng số liệu ta thấy được 100 quan sát tương ứng với 100 bệnh nhân với 11 biến trong
đó biến age, height, weight, before, aer là biến numeric và những biến id, edu, job, city, base,
tr là các biến định nh (character).
Biến “age” ta có:
+ Người có độ tuổi cao nhất (Max): 87 tuổi
head(bmi,
5)
summary(duong
1)
+ Người có độ tuổi thấp nhất (Min): 28 tuổi +
Người có độ tuổi trung bình (Mean): 45 tuổi Biến
“id” ta có:
+ Id cao nhất ( Max): 100
+ Id thấp nhất (Min): 1 + Id
trung bình (Mean): 50.50 Biến
:weight” ta có:
+ Người có cân nặng cao nhất (Max): 83
+ Người có cân nặng thấp nhất (Min): 48 +
Người có cân nặng trung bình (Mean): 63.91
Biến “height” ta có:
+ Người có chiều cao cao nhất (Max): 1.96
+ Người có chiều cao thấp nhất (Min): 1.21 +
Người có chiều cao trung bình (Mean): 1.561 Biến
“before” ta có:
+ Before cao nhất (Max): 22.2
+ Before thấp nhất (Min): 8.4 +
Before trung bình (Mean): 14.28 Biến
aerta có:
+ Aer cao nhất (Max): 17.4
+ Aer thấp nhất (Min): 5.4
+ Aerr tung bình (Mean): 10.63
Câu hỏi 6: Hãy biểu diễn các biến numeric thông qua biểu đồ hình cột và đưa ra nhận xét
Trả lời:
> hist(duong1$age, main="Do tuoi", xlab="So tuoi", ylab="So nguoi")
Nhận xét:
+ Khoảng tuổi có nhiều người nhất
(Max: 30 – 40 tuổi )
+ Khoảng tuổi có ít người nhất (Min: 20 –
30 tuổi )
> hist(duong1$height, main="Chieu cao", xlab="Chieu cao", ylab="So nguoi")
Nhận xét:
+ Khoảng chiều cao có nhiều người nhất
(Max: 1.5 – 1.6m )
+ Khoảng chiều cao có ít người nhất (Min: 1.9 –
2m )
> hist(duong1$weight, main="Can nang", xlab="Chi so", ylab="So nguoi")
Nhận xét:
+ Khoảng cân nặng có nhiều người nhất
(Max: 65 – 70kg )
+ Khoảng cân nặng có ít người nhất (Min: >
80kg)
> hist(duong1$before, main="Chi so duong huyet truoc", xlab="Chi so", ylab="So nguoi")
Nhận xét:
+ Chỉ số đường huyết trước có nhiều người nhất
(Max: 10 – 20 )
+ Chỉ số đường huyết trước có ít người nhất
(Min: <10 và >20)
> hist(duong1$aer, main="Chi so duong huyet sau",
xlab="Chi so", ylab="So nguoi")
Nhận xét:
+ Chỉ số
đường huyết
sau có nhiều người nhất
(Max: 8 – 10 )
+ Chỉ số đường huyết sau có ít người nhất (Min: 16
– 18 )
Câu hỏi 7: Hãy biểu diễn các biến numeric dưới dạng hàm phân phối xác suất?
Trả lời:
Câu hỏi 8: Chia các biến numeric thành nhiều nhóm nhỏ và biểu biễn bằng biểu đồ hình tròn:
Trả lời: Chẳng hạn với biến before, ta có thể chia 100 bệnh nhân thành 3 nhóm hoặc 4 nhóm
như sau:
- Vậy nếu chia chỉ số đường huyết trước điều trị (before) thành 3 nhóm ta có:
+ Nhóm 1: có chỉ số đường huyết từ 8,38 đến 13 có 43 bệnh nhân
+ Nhóm 2: có chỉ số đường huyết từ 13 đến 17,6 có 36 bệnh nhân
+ Nhóm 3: có chỉ số đường huyết từ 17,6 đến 22,2 có 21 bệnh nhân
- Còn nếu chia chỉ số đường huyết trước điều trị (before) thành 4 nhóm thì ta có:
+ Nhóm 1: có chỉ số đường huyết từ 8,39 đến 11,8 có 27 bệnh nhân
+ Nhóm 2: có chỉ số đường huyết từ 11,8 đến 15,3 có 33 bệnh nhân
+ Nhóm 3: có chỉ số đường huyết từ 15,3 đến 18,8 có 31 bệnh nhân
+ Nhóm 4: có chỉ số đường huyết từ 18,8 đến 22,2 có 9 bệnh nhân
Để đạt được hiệu quả cao trong quá trình điều trị, người ta có thể chia bệnh nhân thành những
nhóm có chỉ số đường huyết gần nhau để áp dụng các phác đồ điều trị giống nhau
Câu hỏi 9: Hãy theo dõi bệnh nhân theo từng nhóm có cùng chỉ số, cùng thuộc nh và biểu diễn
bởi biểu đồ hình cột?
Trả lời : Chẳng hạn ta theo dõi nhóm bệnh nhân có cùng chỉsố đường huyết trước điều trị
(before) với cùng phác đồ điều trị (tr)

Preview text:

BÀI THỰC HÀNH XÁC SUẤT THỐNG KÊ MỤC LỤC
I. Giới thiệu về phần mềm R
1. Giới thiệu chung về phần mềm R 2. Tính năng của R
II. Sử dụng phần mềm R trong tính toán với Xác suất, Thống kê.
1. Các lệnh cơ bản về xác suất
2. Sử dụng phần mềm R trong tính toán với Thống kê
III. Áp dụng phần mềm R vào bài tập của sinh viên khoa Dược 1. Phần xác suất 2. Phần thống kê
IV. Bài tập thực hành thống kê mô tả trong R
I. Giới thiệu về phần mềm R
1. Giới thiệu chung về phần mềm R
R là một phần mềm mã nguồn mở (cũng được gọi là ngôn ngữ R, lập trình R, thống kê R…) sử
dụng cho phân tích thống kê và vẽ biểu đồ. Về bản chất, R là ngôn ngữ máy tính đa năng có thể
sử dụng cho nhiều mục tiêu khác nhau, từ tính toán đơn giản, toán học giải trí, tính toán ma
trận đến các phân tích thống kê phức tạp. Vì là một ngôn ngữ, cho nên người ta có thể sử dụng
R để phát triển thành các phần mềm chuyên môn cho một vấn đề tính toán cá biệt.
Vì tính hữu dụng và là mã nguồn mở cho nên trong những năm gần đây phần mềm R đã
được phát triển rất mạnh mẽ. Càng ngày càng có nhiều nhà thống kê học, toán học, nghiên cứu
trong mọi lĩnh vực đã chuyển sang sử dụng R để phân tích dữ liệu khoa học. R đang được đánh
giá là một phần mềm thống kê miễn phí rất thành công. 2. Tính năng của R
R cho phép giải quyết một khối lượng lớn những bài toán trong tính toán xác suất, tính toán
và phân tích thống kê và đồ thị. Các bài toán thống kê phổ biến như hồi quy tuyến tính và phi
tuyến, ước lượng và kiểm định thống kê cổ điển, phân tích chuỗi thời gian,…đều có thể được thực hiện trên R.
II. Sử dụng phần mềm R trong tính toán với Xác suất, Thống kê.
1. Các lệnh cơ bản về xác suất:
Hoán vị, chỉnh hợp, tổ hợp Phép toán Hàm lệnh Hoán vị prod(n:1) Chỉnh hợp permutations(n,k) Tổ hợp choose(,.k)
Chọn mẫu ngẫu nhiên
Cách chọn mẫu cỡ n trong tổng thể N Hàm trong R
Chọn mẫu ngẫu nhiên không hoàn lại sample(1:N,n)
Chọn mẫu ngẫu nhiên có hoàn lại sample(1:N,n, replace = TRUE)
2. Sử dụng phần mềm R trong tính toán với Thống kê
Các hàm số trong thống kê
Tính toán trong thống kê
Hàm trong phần mềm R
Nhập số liệu của một đối tượng c()
Số nhỏ nhất của đối tượng min()
Số lớn nhất của đối tượng max()
Tính tổng các số hạng của đối tượng sum()
Tính số trung bình của các số liệu mean() Tính phương sai var() Tính độ lệch chuẩn sd() Tính trung vị median() length()
Tính số các số hạng của một đối tượng table()
Lập bảng tần số từ dữ liệu cut()
Từ dãy các số liệu rời rạc ta muốn lập
bảng tần số theo khoảng cov(x,y)
Hiệp phương sai của hai biến số x và y cor(x,y)
Hệ số tương quan của hai biến số x và y cov(X) cor(X)
Hiệp phương sai của các biến số trong X
Hệ số tương quan của các biến số trong X
Các phân phối thường dùng trong Thống kê Phân phối
Mật độ p(x)
Xác suất tích lũy Phân vị P( Ngẫu nhiên
Xx) = p
P( X x) Chuẩn
dnorm(x,mean,sd) pnorm(q,mean,sd) qnorm(p,mean,sd) rnorm(n,mean,sd) T dt(x,df) pt(q,df) qt(p,df) rt(n,df) F df(x,df1,df2) pf(q,df1,df2) qf(p,df1,df2) rf(n,df1,df2) dchisq(x,df) pchi(q,df) qchisq(p,df) rchisq(n,df) χ 2 Nhị thức dbinom(k,n,p) pbinom(q,n,p) qbinom(p,n,p) rbinom(k,n,prob) Poisson λ λ λ λ dpois(k, ) ppois(q, ) qpois(p, ) rpois(n, ) Exponential λ λ λ λ dexp(x, ) pexp(q, ) qexp(p, ) rexp(n, ) Đều U(a,b) dunif(x,a,b) punif(q,a,b) qunif(p,a,b) runif(n,a,b)
Một số hàm lệnh của phần mềm R trong kiểm định và phân tích hồi quy Kiểm định
Hàm trong phần mềm R
Kiểm định t - một mẫu t.test()
Kiểm định t – hai mẫu t.test(x~y)
Kiểm định t – cho các biến số theo cặp (paired, t.test)
Kiểm định tỉ lệ; So sánh 2 tỉ lệ prop.test; binom.test()
Kiểm định Chi bình phương ( χ 2 ) chisq.test() Kiểm định Fisher fisher.test() Kiểm định nhị thức binom.test() Kiểm định chuẩn (0,1) z.test()
Kiểm định tương quan hai biến x và y cor.test(x,y)
Kiểm định F về tỉ số hai phương sai var.test(x,y)
Hệ số tương quan, cỡ mẫu, và các giá trị xác suất library(psych)
của data.frame hoặc ma trận X corr.test(X)
Hệ số tương quan của data.frame hoặc ma trận X pairs.panels()
Hồi quy tuyến tính hai biến lm(y~x)
Hồi quy tuyến tính nhiều biến lm(y~x1+x2+x3)
Shapiro – Wilk test về tính chuẩn shapiro.test()
III. Áp dụng tích hợp phần mềm R vào bài tập của sinh viên Dược 1.Phần xác suất Chương 1,2,3
Ví dụ 1: Một học sinh xếp 10 quyển sách lên kệ sách. Hỏi có bao nhiêu cách sắp xếp? Giải: > prod(10:1) [1] 3628800
Ví dụ 2: Một nhóm trong lớp học có 6 nam và 4 nữ, chọn ra 3 bạn để đi vệ sinh.
Hỏi có bao nhiêu cách chọn? Giải: choose(10,3) [1] 120
Ví dụ 3: Một bà mẹ dự sinh 3 người con( mỗi lần sinh một đứa con), giả sử xác
suất được người con gái là 0.48. Tính xác suất để trong 3 lần sinh đó có ba con gái Trả lời > dbinom(3,3,0.48) [1] 0.110592
Ví dụ 4: Xác suất mắc bệnh sau khi dùng vacxin là 0,001. Dùng vacxin cho 5000 trẻ
em. Tìm xác suất để 5 trẻ bị bệnh khi dùng vacxin Giải: > dpois(5,5) [1] 0.1754674
Ví dụ 5: Giả sử độ cao của trẻ em từ độ tuổi 8 đến 10 tuổi là biến ngẫu nhiên có
phân phối chuẩn ( 𝜇,𝜎2 ). Biết chiều cao trung bình là = 1,3 m và độ lệch chuẩn
= 0,01. Tính xác suất để trẻ em có độ cao nằm trong khoảng (1,2m; 1,4m). Giải:
> pnorm((1.4-1.3)/sqrt(0.01))-pnorm((1.2-1.3)/sqrt(0.01)) [1] 0.6826895 2.Phần thống kê
Ví dụ 6: Đo chiều cao X của 100 sinh viên của một trường, ta thu được bảng số liệu sau: Chiều cao (cm) 156 160 164 168 172 176 180 Số sinh viên 10 14 26 28 12 8 2
Tính trung bình và phương sai mẫu?
> Chieucao=c(156,160,164,168,172,176,180)
> Sosinhvien=c(10,14,26,28,12,8,2)
> x=rep(Chieucao,Sosinhvien) > mean(x) [1] 166 > var(x) [1] 33.778 > sd(x) [1] 5.812
Ví dụ 7: Xét nghiệm Cholesterol toàn phần X (mmol/lít) cho 500 người ta thu được kết quả: Khoảng Cholesterol 35-40 40-45 45-50 50-55 55-60 60-65 65-70 Trung tâm lớp xi 37.5 42.5 47.5 52.5 57.5 62.5 67.5 Số người ni 19 42 125 155 83 55 21
Với độ tin cậy 95% hãy ước lượng khoảng tin cậy của lượng Cholesterol trung bình
của những người ở độ tuổi trên Giải:
> luongCholesterol=c(37.5,42.5,47.5,52.5,57.5,62.5,67.5)
> songuoi=c(19,42,125,155,83,55,21)
> x=rep(luongCholesterol,songuoi)
> t.test(x,conf.level=0.95) One Sample t-test data: x
t = 169.32, df = 499, p-value < 2.2e-16
alternative hypothesis: true mean is not equal to 0
95 percent confidence interval: 51.79198 53.00802 sample estimates: mean of x 52.4
Ví dụ 8: Hàm lượng X (mg/viên) Tettracyclin loại 0,05 được quy định là 50(mg/viên).
Kiểm tra hàm lượng của một lô thuốc ta nhận được kết quả sau:
X (mg/viên) 49,8 49,6 49,5 50,1 49,7 49,9 49,8 50,5 50,4 50,0
Với mức ý nghĩa 5%, hãy kiểm tra xem hàm lượng lô thuốc trên có đáp ứng được yêu cầu quy định không? Giải: > library(BSDA)
> x=c(49.8,49.6,49.5,50.1,49.7,49.9,49.8,50.5,50.4,50.0)
> t.test(x, mu=50, alt = "two.sided")
One Sample t-test data: x t = -0.67742, df = 9, p-value = 0.5152
alternative hypothesis: true mean is not equal to 50 95 percent confidence interval: 49.69624 50.16376 sample estimates: mean of x 49.93
Ví dụ 3: Định lượng hàm lượng của Tetracyclin clorhydrat X trong 20 viên thuốc
loại 500mg và thu được kết quả sau: Hàm lượng 102 103 104 95 96 97 98 99 Số viên 1 2 4 5 3 2 2 1
Với độ tin cậy 95%, hãy xác định khoảng tin cậy cho hàm lượng trung bình của
Tetracyclin clorhydrat trong lô thuốc trên. Giải: > library(BSDA)
> hamluong=c(102,103,104,95,96,97,98,99)
> sovienthuoc=c(1,2,4,5,3,2,2,1)
> x=rep(hamluong,sovienthuoc)
> t.test(x,conf.level=0.95) One Sample t-test
data: x t = 120.09, df = 19, p-value < 2.2e-16
alternative hypothesis: true mean is not equal to 0
95 percent confidence interval: 97.07806 100.52194 sample estimates: mean of x 98.8
IV. Bài tập thực hành thống kê mô tả trong R
Câu hỏi 1: Trong phần mềm R hãy đọc tệp dữ liệu duong1.csv cho trước trong thư mục
“thuchanhr10.4” ở ổ C rồi ghi lại dưới dạng một data.frame chuyên dụng trong phần mềm R với tên duong1.rda Trả lời:
> setwd("d:/thuchanhr10.4")
> duong1<-read.csv('duong1.csv',row.names=1)
> save(duong1,file="duong1.rda") > View(duong1)
Câu hỏi 2: Hãy mô tả chung về tệp dữ liệu duong1.rda? (Như cấu trúc; số chiều;…) Trả lời:
Trong phần mềm R nhập và thực thi lần lượt các lệnh: > attach(duong1) > str(duong1) > dim(duong1)
Báo cáo kết quả trong phần mềm R
Câu hỏi 3: Hãy tạo biến số có tên là reduce để phản ánh mức giảm của chỉ số đường huyết của
các bệnh nhân sau quá trình điều trị? Ý nghĩa của biến số này theo giá trị âm/dương? Theo
anh/chị tiên lượng thì độ tuổi (age) hoặc bệnh nền (base) sẽ có tác động như thế nào tới kết quả điều trị? Trả lời : > reduce<- before-after > head(reduce,10) -
Vì reduce đo mức giảm của chỉ số đường huyết cho nên khi reduce có giá trị dương
(chẳng hạn5.2) có nghĩa là nhờ điều trị chỉ số đường huyết của bệnh nhân tương ứng đã giảm
(được 5.2). Còn khi reduce có giá trị âm (chẳng hạn -0.9) có nghĩa là điều trị không hiệu quả vì
chỉ số đường huyết của bệnh nhân tương ứng đã tăng 0.9 (giảm âm). -
Theo logic tự nhiên, người có tuổi tác (age) cao, hoặc đang có bệnh nền (base= “yes”),
thì kết quả điều trị sẽ kém hiệu quả hơn so với trường hợp bệnh nhân còn trẻ hoặc không có bệnh nền.
Câu hỏi 4: Hãy tạo biến có tên bmi để đo chỉ khối cơ thể của mỗi bệnh nhân? Theo tiên lượng
thì bmi có tương quan như thế nào với chiều hướng tốt của điều trị? Trả lời: > bmi<-weight/height^2 head(bmi, 5) -
Theo phân loại của Hiệp hội đái đường các nước châu Á (IDI & WPRO), chỉ số bmi của
người châu Á từ 18,50 đến 22,9 kg/m2 là người có cân nặng bình thường; bmi dưới 18,5 là nhẹ
cân, từ 23-24,9 là thừa cân; bmi từ 25 trở lên là béo phì và dễ mắc bệnh tật. Do đó với bmi từ
25 trở lên và nếu nó càng lớn thì càng không tốt cho việc điều trị bệnh tật nói chung và bệnh tiểu đường nói riêng.
Câu hỏi 5: Hãy cho biết tổng quan về các biến với các quan sát trong tệp dữ liệu tệp dữ liệu
duong1.rda (Như giá trị lớn nhất, giá trị nhỏ nhất, giá trị trung bình, Median…) Trả lời: summary(duong 1)
Qua bảng số liệu ta thấy được 100 quan sát tương ứng với 100 bệnh nhân với 11 biến trong
đó biến age, height, weight, before, after là biến numeric và những biến id, edu, job, city, base,
tr là các biến định tính (character). Biến “age” ta có:
+ Người có độ tuổi cao nhất (Max): 87 tuổi
+ Người có độ tuổi thấp nhất (Min): 28 tuổi +
Người có độ tuổi trung bình (Mean): 45 tuổi Biến “id” ta có: + Id cao nhất ( Max): 100
+ Id thấp nhất (Min): 1 + Id
trung bình (Mean): 50.50 Biến :weight” ta có:
+ Người có cân nặng cao nhất (Max): 83
+ Người có cân nặng thấp nhất (Min): 48 +
Người có cân nặng trung bình (Mean): 63.91 Biến “height” ta có:
+ Người có chiều cao cao nhất (Max): 1.96
+ Người có chiều cao thấp nhất (Min): 1.21 +
Người có chiều cao trung bình (Mean): 1.561 Biến “before” ta có:
+ Before cao nhất (Max): 22.2
+ Before thấp nhất (Min): 8.4 +
Before trung bình (Mean): 14.28 Biến “after” ta có:
+ After cao nhất (Max): 17.4
+ After thấp nhất (Min): 5.4
+ Afterr tung bình (Mean): 10.63
Câu hỏi 6: Hãy biểu diễn các biến numeric thông qua biểu đồ hình cột và đưa ra nhận xét Trả lời:
> hist(duong1$age, main="Do tuoi", xlab="So tuoi", ylab="So nguoi") Nhận xét:
+ Khoảng tuổi có nhiều người nhất (Max: 30 – 40 tuổi )
+ Khoảng tuổi có ít người nhất (Min: 20 – 30 tuổi )
> hist(duong1$height, main="Chieu cao", xlab="Chieu cao", ylab="So nguoi") Nhận xét:
+ Khoảng chiều cao có nhiều người nhất (Max: 1.5 – 1.6m )
+ Khoảng chiều cao có ít người nhất (Min: 1.9 – 2m )
> hist(duong1$weight, main="Can nang", xlab="Chi so", ylab="So nguoi") Nhận xét:
+ Khoảng cân nặng có nhiều người nhất (Max: 65 – 70kg )
+ Khoảng cân nặng có ít người nhất (Min: > 80kg)
> hist(duong1$before, main="Chi so duong huyet truoc", xlab="Chi so", ylab="So nguoi") Nhận xét:
+ Chỉ số đường huyết trước có nhiều người nhất (Max: 10 – 20 )
+ Chỉ số đường huyết trước có ít người nhất (Min: <10 và >20)
> hist(duong1$after, main="Chi so duong huyet sau",
xlab="Chi so", ylab="So nguoi")
Nhận xét: + Chỉ số đường huyết
sau có nhiều người nhất (Max: 8 – 10 )
+ Chỉ số đường huyết sau có ít người nhất (Min: 16 – 18 )
Câu hỏi 7: Hãy biểu diễn các biến numeric dưới dạng hàm phân phối xác suất? Trả lời:
Câu hỏi 8: Chia các biến numeric thành nhiều nhóm nhỏ và biểu biễn bằng biểu đồ hình tròn:
Trả lời: Chẳng hạn với biến before, ta có thể chia 100 bệnh nhân thành 3 nhóm hoặc 4 nhóm như sau:
- Vậy nếu chia chỉ số đường huyết trước điều trị (before) thành 3 nhóm ta có:
+ Nhóm 1: có chỉ số đường huyết từ 8,38 đến 13 có 43 bệnh nhân
+ Nhóm 2: có chỉ số đường huyết từ 13 đến 17,6 có 36 bệnh nhân
+ Nhóm 3: có chỉ số đường huyết từ 17,6 đến 22,2 có 21 bệnh nhân
- Còn nếu chia chỉ số đường huyết trước điều trị (before) thành 4 nhóm thì ta có:
+ Nhóm 1: có chỉ số đường huyết từ 8,39 đến 11,8 có 27 bệnh nhân
+ Nhóm 2: có chỉ số đường huyết từ 11,8 đến 15,3 có 33 bệnh nhân
+ Nhóm 3: có chỉ số đường huyết từ 15,3 đến 18,8 có 31 bệnh nhân
+ Nhóm 4: có chỉ số đường huyết từ 18,8 đến 22,2 có 9 bệnh nhân
Để đạt được hiệu quả cao trong quá trình điều trị, người ta có thể chia bệnh nhân thành những
nhóm có chỉ số đường huyết gần nhau để áp dụng các phác đồ điều trị giống nhau
Câu hỏi 9: Hãy theo dõi bệnh nhân theo từng nhóm có cùng chỉ số, cùng thuộc tính và biểu diễn
bởi biểu đồ hình cột?
Trả lời : Chẳng hạn ta theo dõi nhóm bệnh nhân có cùng chỉsố đường huyết trước điều trị
(before) với cùng phác đồ điều trị (tr)