2021 THKHSS

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 76

TÀI LIỆU THỰC HÀNH

THỐNG KÊ TRONG KHOA HỌC


SỰ SỐNG
MaMH: C01125 - C01145

Biên soạn: ThS. Bùi Thùy Trang

Tp. Hồ Chí Minh - 2021


Mục lục

1 GIỚI THIỆU NGÔN NGỮ R 3


1.1 R - Nguồn gốc lịch sử . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.1 R là gì? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.1.2 Nguồn gốc lịch sử . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
1.2 Ưu điểm và nhược điểm của R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.1 Ưu điểm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.2.2 Nhược điểm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
1.3 Cài đặt R và Rstudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.1 Cài đặt R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
1.3.2 Cài đặt Rstudio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

2 CÁC TÍNH TOÁN CƠ BẢN TRONG R 7


2.1 Các phép toán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.1 Các phép toán cơ bản . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.1.2 Các phép toán logic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.3 Các phép toán trên vector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
2.1.4 Giai thừa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.5 Tổ hợp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.6 Chỉnh hợp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.1.7 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.2 Nhập và xuất dữ liệu trực tiếp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.1 Nhập trực tiếp từ bàn phím . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.2.2 Nhập dữ liệu từ file *txt vào R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.3 Nhập dữ liệu từ file *xlxs vào R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2.4 Nhập dữ liệu từ file *pdf vào R . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
2.2.5 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
2.3 Biên tập dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

2.3.1 Sắp xếp dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18


2.3.2 Rút trích dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.4 Hợp nhất dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.1 Hợp nhất theo cột . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.4.2 Hợp nhất theo dòng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.4.3 Mã hóa dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4.4 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
2.5 Mô tả dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.1 Mô tả dữ liệu bằng biểu đồ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
2.5.2 Mô tả dữ liệu bằng các đặc trưng thống kê . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.5.3 Biểu đồ hộp và outliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
2.5.4 Biểu đồ hộp - box-whisker plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43
2.5.5 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

3 Một số phân phối xác suất thông dụng 52


3.1 Biến ngẫu rời rạc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1.1 Phân phối nhị thức (Binomial distribution) . . . . . . . . . . . . . . . . . . . . . . . . . . 52
3.1.2 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
3.1.3 Phân phối Poisson (Poisson distribution) . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.1.4 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
3.2 Biến ngẫu nhiên liên tục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.2.1 Phân phối chuẩn (Normal distribution) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
3.2.2 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

4 ƯỚC LƯỢNG THAM SỐ VÀ KIỂM ĐỊNH GIẢ THUYẾT THỐNG KÊ 64


4.1 Ước lượng và kiểm định giả thuyết cho tham số trung bình của tổng thể . . . . . . . . . . . . . . 64
4.2 Ước lượng và kiểm định giả thuyết cho tham số tỷ lệ của tổng thể . . . . . . . . . . . . . . . . . 67
4.3 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

2
Chương 1

GIỚI THIỆU NGÔN NGỮ R

1.1 R - Nguồn gốc lịch sử

1.1.1 R là gì?

R là một phần mềm thống kê được sử dụng để phân tích dữ liệu và vẽ biểu đồ. Thực
ra, 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, tính toán ma trận, đến các phân tích thống kê phức
tạp.

1.1.2 Nguồn gốc lịch sử

R là một ngôn ngữ lập trình và môi trường phần mềm cho phân tích thống kê, trình
bày đồ thị và viết báo cáo. R được tạo ra bởi Ross Ihaka và Robert Gentleman tại
Đại Học Auckland, New Zealand và hiện tại được phát triển bởi “R Development Core
Team”.
R xuất hiện lần đầu vào năm 1993. Khi đó một nhóm lớn, các cá nhân đã đóng góp vào
R bằng việc gửi code và báo cáo lỗi. Từ giữa 1997, có một nhóm trụ cột “R Development
Core Team” là những người có thể chỉnh sửa trên kho lưu trữ mã nguồn R.
Ngôn ngữ này được đặt tên R, dựa trên ký tự đầu của tên của hai tác giả (Robert
Gentleman và Ross Ihaka).

3
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

1.2 Ưu điểm và nhược điểm của R

1.2.1 Ưu điểm

1. R là phần mềm miễn phí.

2. R là một gói phân tích dữ liệu với nhiều chức năng thống kê tiên tiến.

3. R được sử dụng rộng rãi trong các ngành khoa học chính trị, thống kê, kinh tế
lượng, khoa học bảo hiểm, xã hội học, tài chính, . . .

4. R là một ngôn ngữ lập trình, vì vậy các khả năng của nó có thể được mở rộng một
cách dễ dàng thông qua việc sử dụng các hàm do người dùng định nghĩa. Một tập
hợp các hàm và gói lệnh được đóng góp từ người dùng có thể được tìm thấy trên
CRAN’s Contributed Packages.

5. Chạy trên mọi nền tảng máy tính – Linux, Window, Mac.

6. R là ngôn ngữ hướng đối tượng. Hầu như bất cứ điều gì (chẳng hạn các cấu trúc
dữ liệu phức tạp) có thể được lưu trữ như một đối tượng R.

7. R là một ngôn ngữ ma trận.

8. R tạo ra những biểu đồ với chất lượng cao (chuẩn bài báo khoa học).

9. R có khả năng lưu trữ và xử lý dữ liệu một cách hiệu quả.

10. R cung cấp một bộ các phép toán để tính toán trên mảng, danh sách, vector, và
ma trận.

1.2.2 Nhược điểm

1. Không dễ để bắt đầu các phân tích với R – cần thiết phải học các kiến thức cơ bản
về cú pháp và các lệnh cơ bản.

2. Hầu như không có giao diện đồ họa người dùng (GUI) mà chỉ có dòng lệnh.

3. Ta cần tìm kiếm các lệnh khả thi tốt nhất trong nhiều gói lệnh.

4. Mọi bảng, đồ thị phải được “lập trình” – không được tạo ra bằng cách click chuột.

4
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

1.3 Cài đặt R và Rstudio

1.3.1 Cài đặt R

Truy cập https://cran.r-project.org/ , trong mục “Download and Install R”, ta chọn
một trong các đường dẫn sau để cài đặt R cho các hệ điều hành khác nhau:

• Download R for Linux.

• Download R for (Mac) OS X.

• Download R for Windows.

Nhấp vào base và chọn Download R 3.x.x Đây là giao diện của R.

1.3.2 Cài đặt Rstudio

Truy cập https://www.rstudio.com, chọn Download RStudio, sau đó chọn mục down-
load free, cuối cùng chọn hệ điều hành phù hợp. Tải về và cài đặt bình thường. Đây là
giao diện của RStudio.
5
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Khi làm việc với R, chúng ta nên viết và thực thi các dòng lệnh trên cửa sổ Editor
(Script).

• Mở cửa sổ Editor (Script): File → New File → R Script hoặc tổ hợp phím
Ctrl+Shift+N.

• Lưu file Script: File → Save → Thư mục lưu trữ → Đặt tên file.

• Mở lại file Script: File → Open Script → Thư mục lưu trữ → file cần mở.

Chú ý: Thực thi dòng lệnh bằng cách đặt con trỏ tại dòng lệnh cần thực thi (bất kỳ
vị trí nào ở dòng đó) và nhấn tổ hợp phím Ctrl+Enter.

6
Chương 2

CÁC TÍNH TOÁN CƠ BẢN TRONG


R

2.1 Các phép toán

2.1.1 Các phép toán cơ bản

1) a cộng b: a+b
2) a trừ b: a-b
3) a nhân b: a*b
4) a chia b: a/b
5) phần nguyên của a chia b: a%/%b
6) phần dư của a chia b: a%%b
7) x lũy thừa n: x^n hay x**n
8) a mũ x: a^x
9) e mũ x: exp(x)
10) căn bậc hai của x: sqrt(x) hay x^(1/2)
11) căn bậc n của x: x^(1/n)
12) giá trị tuyệt đối của x: abs(x)
13) logarit cơ số a của x: log(x, base = a) hay logb(x, base = a)
14) logarit cơ số 2 của x: log(x, base = 2) hay log2(x)
15) logarit cơ số 10 của x: log(x, base = 10) hay log10(x)
16) logarit cơ số e của x: log(x, base = exp(1)) hay log(x)
17) các hàm lượng giác: sin(x), cos(x), tan(x)
18) các hàm ngược của hàm lượng giác: asin(x), acos(x), atan(x)
19) hàm tính tổng: sum()

7
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

20) hàm tính tích: prod()

Ví dụ 2.1.
> abs(-30) # gia tri tuyet doi cua -30
[1] 30
> sqrt(36) # can bac hai cua 36
[1] 6
> -8^(1/3) # can bac ba cua -8
[1] -2
> sin(pi/6)
[1] 0.5
> asin(0.5) # arcsin cua 0.5
[1] 0.5235988
> exp(3) # Gia tri cua e^3
[1] 20.08554
> log(exp(3)) # Logarit tu nhien cua e^3
{[1] 3
> log10(10000) # Logarit co so 10 cua 10000
[1] 4
> logb(9,3) # Logarit co so3 cua 9
[1] 2
> x=1:10
> sum(x) # Tong 1+2+3+...+10
[1] 55
> sum(x^2) # Tong binh phuong: 1^2 + 2^2 +...+ 10^2
[1] 385
> sum(x)^2 # Binh phuong cua tong (1+2+3+...+10)^2
[1] 3025
> prod(x) # Tich 1.2.3...10
[1] 3628800
> prod(x^2) # Tich binh phuong 1^2.2^2...10^2
[1] 1.316819e+13
> factorial(5) # Giai thua cua 5
[1] 120
> factorial(5)/factorial(5-2) # Chinh hop cua 5 chap 2
[1] 20
> choose(5,2)# To hop cua 5 chap 2

8
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

[1] 10

2.1.2 Các phép toán logic

1) a bằng b: a == b
2) a không bằng b: a!=b
3) a nhỏ hơn b: a<b
4) a nhỏ hơn hay bằng b: a<=b
5) a lớn hơn b: a>b
6) a lớn hơn hay bằng b: a>=b
7) không phải a: !a
8) a hoặc b: a|b
9) a và b: a&b

Đây là dữ liệu dạng logic (TRUE hoặc FALSE) để xác định chân trị của một vấn đề.

Chú ý: dấu “=” trong R là phép gán giá trị còn dấu “==” mới thật sự là phép so sánh
thông thường.
Ví dụ 2.2.
> 99<100 > 99>100 > 99>=100
[1] TRUE [1] FALSE [1] FALSE
> 100>100 > 100<=100 > (2+2)!=5
[1] FALSE [1] TRUE [1] TRUE
> !((2+2)==5) > !(2<3)
[1] TRUE [1] FALSE
> ((2+2)==4)&((2+2)==5) > ((2+2)==4)|((2+2)==5)
[1] FALSE [1] TRUE
> !(2<3)&(3<=4) > (2!=3)|(2==3)}
[1] FALSE [1] TRUE

2.1.3 Các phép toán trên vector

- Khai báo vector x = (x1 , x2 , . . . , xn ): x = c(x1, x2, ..., xn)


Ví dụ 2.3.
9
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

# Vector kieu so (numeric)


> x=c(1,3,5,7,9,0,2,4,6,8)
> x
[1] 1 3 5 7 9 0 2 4 6 8
# Vector chuoi (string): them dau nhay (mot dau hay hai dau deu duoc)
> name = c(’A’,’B’,’C’,’D’)
> name
[1] "A" "B" "C" "D"

- seq(from = ,to = ,by = ) hoặc seq(from = ,to = ,len = ), tạo phần tử liên
tiếp.

- rep(x, times = ,len = ,each = ), tạo các phần tử lặp lại.


Ví dụ 2.4.
> x = seq(from = 10, to = 20, by = 1)
> x
[1] 10 11 12 13 14 15 16 17 18 19 20
> y = seq(from = 20, to = 10, by = -1)
> y
[1] 20 19 18 17 16 15 14 13 12 11 10
> z = rep(1:3, times = 5)
> z
[1] 1 2 3 1 2 3 1 2 3 1 2 3 1 2 3
> t = rep(c(2,3),times = c(5,4))
> t
[1] 2 2 2 2 2 3 3 3 3

- Trích thành phần thứ i của vector x : x[i]

- Đếm thành phần của vector x : length(x)

- Sắp xếp các thành phần của vector x theo thứ tự giảm dần/ tăng dần:
sort(x,decreasing = TRUE/FALSE)
order(x) hoặc order(-x)

- Tổng của hai vector x và y: x+y


10
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

- Hiệu của hai vector x và y: x-y

- Nhân vector x với số thực k : k*x

- Tích vô hướng của hai vector x và y: x*y

- Nối hai vector x và y: c(x,y)

2.1.4 Giai thừa

Với n ∈ N, ta định nghĩa n! = 1 · 2 · · · n. Quy ước rằng 0! = 1. Trong R, để tính n!, ta


dùng câu lệnh:
factorial(n)
hoặc
prod(n:1)

2.1.5 Tổ hợp

Cho tập hợp gồm n phần tử. Mỗi tập con gồm k phần tử (1 ≤ k ≤ n) của A được gọi
là một tổ hợp chập k của n phần tử. Số các tổ hợp chập k của n phần tử được ký hiệu
và xác định bởi
n!
Cnk = .
k!(n − k)!
Câu lệnh trong R:
choose(n,k)
Ngoài ra, ta có thể viết hàm để tính tổ hợp:

C = function(n,k)
{factorial(n)/(factorial(k)*factorial(n-k))}

2.1.6 Chỉnh hợp

Cho tập hợp gồm n phần tử. Mỗi tập con gồm k phần tử (1 ≤ k ≤ n), phần tử của A
theo một thứ tự nào đó được gọi là một chỉnh hợp chập k của n phần tử. Số chỉnh hợp
chập k của n phần tử được ký hiệu và xác định bởi

n!
Akn = .
(n − k)!
11
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Câu lệnh trong R:


choose(n,k)*factorial(k)
Ngoài ra, ta có thể định nghĩa hàm để tính chỉnh hợp:

A = function(n,k)
{factorial(n)/factorial(n-k)}

2.1.7 Bài tập

Bài tập 2.1.1. Tính:

a) 3! + 4 · 5! − 6!.

b) 1! + 2! + · · · + 20!.

c) 1 − 2 + 3 − 4 + · · · + 99 − 100.
23 13 7
d) C25 − C15 − 3C10 .
0 1 10
e) C10 + C10 + · · · + C10 .
2 k 10
1 C10 C10 C10
f) C10 + 2 1 + · · · + k k−1 + · · · + 10 9 .
C10 C10 C10
P100 1
g) j=1 j 2 . h) A210 .
A515 + A210
i) A57 − A25 . j) .
A59
P10 k
Q10 k
k) k=1 A10 . l) k=1 A10 .
10
A59 Y 1
m) − 2!A210 . n) √ √ .
4 n=1
n+ n+1
Bài tập 2.1.2.

a) Khởi tạo vector u = (1, 2, . . . , 99, 100).

b) Khởi tạo vector u = (1, . . . , 9, 9, . . . , 1).

c) Khởi tạo vector u = (1, . . . , 1, 2, . . . , 2, 3, . . . , 3) (mỗi số trong các số 1, 2, 3 lặp lại


10 lần).

d) Khởi tạo vector u = (2, 4, 6, . . . , 98, 100).

12
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

e) Khởi tạo vector u = (1, 3, 5, . . . , 97, 99).

Bài tập 2.1.3. Tạo vector


x = c(1,2,5,7,-3,0,5,1,5,6)
y = c(2,2,0,-5,7,8,11,9,3,2)
a. Tính x+y, x*y, x-y
b. Tạo z=[những phần tử chẵn của x], t=[những phần tử lẻ của y]
c. Trích những phần tử lớn hơn 0 của x và y và gán cho vector w.
Bài tập 2.1.4. Xét dãy số x1 , x2 , . . . , x10 với

A4k+4 143
xk = − , k = 1, . . . , 10.
(k + 2)! 4 · k!

a) Xuất ra tất cả các số hạng của dãy.

b) Xuất ra tất cả các số hạng không âm của dãy.

c) Các số hạng không âm là các số hạng thứ bao nhiêu trong dãy.

2.2 Nhập và xuất dữ liệu trực tiếp

2.2.1 Nhập trực tiếp từ bàn phím

Nhập dữ liệu sau vào R


ST T Age Insulin
1 50 16.5
2 62 10.8
3 60 32.3
4 40 19.3
5 48 14.2
6 47 11.3
7 57 15.5
8 70 15.8
9 48 16.2
10 67 11.2

a) Dùng hàm c() và hàm data.frame()


13
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> stt = 1:10


> age = c(50, 62, 60, 40, 48, 47, 57, 70, 48, 67)
> insulin=c(16.5, 10.8, 32.3, 19.3, 14.2, 11.3, 15.5, 15.8, 16.2, 11.2)
> data1 = data.frame(id, age, insulin)
> data1
stt age insulin
1 1 50 16.5
2 2 62 10.8
3 3 60 32.3
4 4 40 19.3
5 5 48 14.2
6 6 47 11.3
7 7 57 15.5
8 8 70 15.8
9 9 48 16.2
10 10 67 11.2

b) Dùng hàm edit()

> data2 = edit(data.frame())


> data2
STT Age Insulin
1 1 50 16.5
2 2 62 10.8
3 3 60 32.3
4 4 40 19.3
5 5 48 14.2
6 6 47 11.3
7 7 57 15.5
8 8 70 15.8
9 9 48 16.2
10 10 67 11.2

14
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

• Lưu dữ liệu lại thành file của R (*rda)

> setwd("E:/Thuchanh") # noi luu tru


> save(data1, file="insu.rda") # luu data1 va dat ten insu.rda

• Xuất dữ liệu thành các dạng khác (word, text, excel,. . . )

> write.table(data1, "E:/Thuchanh/insulin1.txt", sep="\t",


row.names=FALSE)
> write.table(data1, "E:/Thuchanh/insulin2.xls", sep="\t",
row.names=FALSE)
> write.table(data1, "E:/Thuchanh/insulin3.doc", sep="\t",
row.names=FALSE)

Trong đó, sep là tham số để tạo ngăn cách các cột, row.names mặc định là TRUE
xuất ra chỉ số thứ tự của các dòng. Do đó, ta phải chọn FALSE không xuất ra các
chỉ số đó.

• Lưu tất cả các công việc đã làm thành file text: File/Save as File. . .

2.2.2 Nhập dữ liệu từ file *txt vào R

Dùng hàm read.table().

Ví dụ 2.5. Đọc file iqsize.txt trong thư mục Datafiles vào R.

> data = read.table(file.choose(),header = TRUE)


> data

2.2.3 Nhập dữ liệu từ file *xlxs vào R

Nhập gián tiếp: thông qua hàm read.csv().


Bước 1: lưu file *.xlsx hoặc *.xls dạng *.csv.
Bước 2: dùng hàm read.csv() đọc dữ liệu vào R.

Ví dụ 2.6. Đọc file diemthi trong thư mục Datafiles vào R.

> diem = read.csv(file = file.choose(), header = TRUE)


15
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> diem
name age gender group score
1 An 17 male group 1 12
2 Binh 19 male group 1 10
3 Hai 21 male group 1 11
4 Nguyen 37 male group 2 15
5 Trung 18 male group 2 16
6 Thuy 19 female group 2 14
7 Van 47 female group 3 25
8 Mai 18 female group 3 21
9 Thao 19 female group 3 29

2.2.4 Nhập dữ liệu từ file *pdf vào R

Đôi khi, chúng ta đọc các file tài liệu như word, excel, pdf, sách điện tử (nói chung
tài liệu điện tử),. . . và ở đó, chúng ta thỉnh thoảng thấy có một số bảng dữ liệu có sẵn.
Lúc này, nếu ta muốn sao chép chúng để sử dụng thì ta có thể sử dụng hàm scan() sẽ
đỡ mất thời gian gõ từng con số và ký tự. Hãy theo dõi các ví dụ sau:
• Dữ liệu dạng numeric

Trọng lượng của 50 cầu thủ hàng đầu NBA Bộ dữ liệu dưới đây liệt kê về trọng
lượng của 50 cầu thủ hàng đầu NBA (đơn vị: lb).

240 210 220 260 250 195 230 270 325 225
165 295 205 230 250 210 220 210 230 202
250 265 230 210 240 245 225 180 175 215
215 235 245 250 215 210 195 240 240 225
260 210 190 260 230 190 210 230 185 260

Bước 1: Copy toàn bộ số liệu.


Bước 2: Vào cửa số Console tạo một object mới trong.luong = scan().
Bước 3: Nhấn enter rồi paste dữ liệu vào cửa sổ Console, sau đó nhấn enter.
• Dữ liệu dạng character
Tin tưởng vào thông tin Internet. Một cuộc khảo sát đã được thực hiện về mức độ
16
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

tin cậy của mọi người đối với thông tin họ đọc trên Internet. A = tin tưởng vào mọi
thứ họ đọc, M = tin tưởng vào hầu hết những gì họ đọc, H = tin tưởng vào khoảng
một nửa những gì họ đọc, S = tin tưởng vào một phần nhỏ những gì họ đọc. (Dựa trên
thông tin từ Báo cáo Internet UCLA.)

M M M A H M S M H M
S M M M M A M M A M
M M H M M M H M H M
A M M M H M M M M M

Cách làm tương tự như dữ liệu dạng numeric, tuy nhiên thêm đối số what = "string".
• Dữ liệu vừa có numeric vừa có character

Giả sử ta cần nhập bảng số liệu sau vào R.


Categories Superior Michigan Huron Erie Ontario
Length (miles) 350 307 206 241 193
Breadth (miles) 160 118 183 57 53
Depth (feet) 1,330 923 750 210 802
Volume (cubic miles) 2,900 1,180 850 116 393
Area (square miles) 31,700 22,300 23,000 9,910 7,550
Shoreline (U.S., miles) 863 1,400 580 431 300
Bước 1: Copy toàn bộ số liệu (trừ các header).
Bước 2: Vào cửa sổ Console tạo một object mới data = scan(,what="string").
Bước 3: Nhấn enter rồi paste dữ liệu vào cửa sổ Console.
Lưu ý:
Thay các khoảng trắng (nếu có) bằng “dấu _” hoặc “dấu .”
Bỏ các “dấu ,” ngăn cách giữa hàng nghìn, chục nghìn,. . . ;
Thay “dấu .” của số âm bằng “dấu –” . Sau đó nhấn enter.
Bước 4: Chuyển kiểu vector thành ma trận (dùng hàm matrix())
Bước 5: chuyển ma trận về dạng data.frame (dùng hàm as.data.frame())
Bước 6: Đặt tên các cột và chuyển dữ liệu về dạng phù hợp (dùng hàm edit())

17
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

2.2.5 Bài tập

Bài tập 2.2.1. Nhập bảng số liệu sau vào R theo 3 cách

a) Sử dụng hàm c() và data.frame(); edit(); scan().

b) Xuất dữ liệu đã nhập và lưu dưới dạng file text và file excel.

STT Gioi.tinh Chieu.cao Can.nang Trinh.do


1 nu 160 45 Khac
2 nam 170 70 Khac
3 nam 180 85 Khac
4 nu 155 42 Phothong
5 nam 172 67 Phothong
6 nu 162 50 Phothong
7 nam 160 65 Phothong
8 nu 168 58 Daihoc
9 nam 170 60 Daihoc
10 nu 165 50 Daihoc

Bài tập 2.2.2. Đọc các file dữ liệu sau vào R

a) Lượng các sản phẩm tiêu thụ ở một số tp lớn: citysale.xls

b) Lượng mưa ở một số thành phố lớn: cityrain.txt

2.3 Biên tập dữ liệu

2.3.1 Sắp xếp dữ liệu

- Sắp xếp biến x theo thứ tự tăng dần: x[order(x)] hoặc sort(x, decreasing =
FALSE).

- Sắp xếp biến x theo thứ tự giảm dần: x[order(-x)] hoặc sort(x, decreasing =
TRUE)
Ví dụ 2.7.
Sắp xếp dãy số sau tăng dần: 2;-1.5; 0; 3; 2; 1; 7; 9; 10.
18
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> x = c(2, -1.5, 0, 3, 2, 1, 7, 9, 10)


> x
[1] 2.0 -1.5 0.0 3.0 2.0 1.0 7.0 9.0 10.0
> sort(x)
[1] -1.5 0.0 1.0 2.0 2.0 3.0 7.0 9.0 10.0
> sort(x,decreasing=TRUE)
[1] 10.0 9.0 7.0 3.0 2.0 2.0 1.0 0.0 -1.5

Cho bảng số liệu về điểm thi học kỳ 1 của 10 học sinh như sau:

id name gender diem.hk1


1 Minh male 7.0
2 Quan male 8.8
3 Phuc male 9.0
4 Linh female 5.0
5 Vy female 6.0
6 Tu female 6.8
7 Mai female 7.5
8 Tram female 8.5
9 Tien female 8.0
10 Ngoc female 9.5

> id=1:10
> name =c(’Minh’,’Quan’,’Phuc’,’Linh’,’Vy’,’Tu’,’Mai’,’Tram’,’Tien’,’Ngoc’)
> gender=c(rep(’male’,3),rep(’female’,7))
> diem.hk1=c(7.0,8.8,9.0,5.0,6.0,6.8,7.5,8.5,8.0,9.5)
> hk1=data.frame(id,name,gender,diem.hk1)
> hk1
id name gender diem.hk1
1 1 Minh male 7.0
2 2 Quan male 8.8
3 3 Phuc male 9.0
4 4 Linh female 5.0

19
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

5 5 Vy female 6.0
6 6 Tu female 6.8
7 7 Mai female 7.5
8 8 Tram female 8.5
9 9 Tien female 8.0
10 10 Ngoc female 9.5

• Sắp xếp điểm theo thứ tự tăng dần

> sap.xep1=hk1[order(diem.hk1), ]
> sap.xep1
id name gender diem.hk1
4 4 Linh female 5.0
5 5 Vy female 6.0
6 6 Tu female 6.8
1 1 Minh male 7.0
7 7 Mai female 7.5
9 9 Tien female 8.0
8 8 Tram female 8.5
2 2 Quan male 8.8
3 3 Phuc male 9.0
10 10 Ngoc female 9.5

2.3.2 Rút trích dữ liệu

• Rút ra một số phần từ từ tập dữ liệu

Vì mỗi data frame được xem như một ma trận nên chúng có cột và hàng. Do đó,
chúng ta có thể rút trích ra bất kỳ phần tử nào từ tập dữ liệu ban đầu.

Ví dụ 2.8. Ở ví dụ trên, thực hiện các yêu cầu sau

a) Rút ra cột 4, tức là cột điểm trong dữ liệu hk1

b) Rút ra dòng 3 trong dữ liệu hk1

c) Rút ra phần tử ở vị trí dòng 3, cột 2 trong dữ liệu hk1

20
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

d) Rút ra các phần tử ở các vị trí từ dòng 1 đến dòng 5, từ cột 2 đến cột 4 trong
dữ liệu hk1

• Rút ra một tập con dữ liệu thỏa mãn điều kiện đặt ra

Dùng lệnh subset(data, điều kiện)


Ở ví dụ 3.1, thực hiện các yêu cầu sau

a) Rút ra một tập con dữ liệu với điều kiện giới tính là nữ

b) Rút ra một tập con dữ liệu với điều kiện giới tính là nữ và có điểm lớn hoặc
bằng 8.0

c) Rút ra một tập con dữ liệu với điều kiện giới tính là nữ hoặc có điểm lớn hoặc
bằng 8.0

2.4 Hợp nhất dữ liệu

2.4.1 Hợp nhất theo cột

Chúng ta có hai bảng số liệu về kết quả điểm học kỳ 1 (bảng dữ liệu ở ví dụ trên) và
bảng dữ liệu học kỳ 2, chúng ta cần hợp hai bảng dữ liệu điểm bằng lệnh merge().
Sau đó, tạo cột điểm trung bình và cột xếp loại cho dataframe ca.nam.

id name gender diem.hk2


1 Minh male 9.0
2 Quan male 6.8
3 Phuc male 8.0
4 Linh female 6.0
5 Vy female 5.0
6 Tu female 8.8
7 Mai female 6.5
8 Tram female 5.5
9 Tien female 10.0
10 Ngoc female 8.5

Nhập dữ liệu bảng trên đặt tên là hk2

21
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> ca.nam=merge(hk1,hk2,by=c("id",’gender’,’name’))
> ca.nam

2.4.2 Hợp nhất theo dòng

Chúng ta cần hai bảng dữ liệu điểm data1 và data2 sau


id gender age diabetes status id gender age diabetes status
1 Female 25 Type1 Improved 6 Male 42 Type2 Improved
2 Male 34 Type2 Poor 7 Female 62 Type1 Excellent
3 Male 28 Type1 Excellent 8 Female 35 Type2 Improved
4 Female 52 Type1 Poor 9 Male 65 Type1 Poor
5 Female 40 Type2 Poor 10 Male 27 Type2 Excellent

> id = 1:5
> gender = c("Female","Male","Male","Female","Female")
> age = c(25,34,28,52,40)
> diabetes = c("Type1","Type2","Type1","Type1","Type2")
> status = c("Improved","Poor","Excellent","Poor","Poor")
> data1 = data.frame(id,gender,age,diabetes,status)
> id = 6:10
> gender = c("Male","Female","Female","Male","Male")
> age = c(42,62,35,65,27)
> diabetes = c("Type2","Type1","Type2","Type1","Type2")
> status = c("Improved","Excellent","Improved","Poor",
"Excellent")
> data2 = data.frame(id,gender,age,diabetes,status)
> patiendata =rbind(data1,data2)
> patiendata
id gender age diabetes status
1 1 Female 25 Type1 Improved
2 2 Male 34 Type2 Poor
3 3 Male 28 Type1 Excellent
4 4 Female 52 Type1 Poor

22
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

5 5 Female 40 Type2 Poor


6 6 Male 42 Type2 Improved
7 7 Female 62 Type1 Excellent
8 8 Female 35 Type2 Improved
9 9 Male 65 Type1 Poor
10 10 Male 27 Type2 Excellent

2.4.3 Mã hóa dữ liệu

Chúng ta cần mã hóa female là 0, male là 1. Chúng ta có thể mã hóa và lưu vào
cột tên là Gioi.tinh như sau

> hk1$Gioi.tinh[gender==’female’] <- 0


> hk1$Gioi.tinh[gender==’male’] <- 1
> hk1
id name gender diem.hk1 Gioi.tinh
1 1 Minh male 7.0 1
2 2 Quan male 8.8 1
3 3 Phuc male 9.0 1
4 4 Linh female 5.0 0
5 5 Vy female 6.0 0
6 6 Tu female 6.8 0
7 7 Mai female 7.5 0
8 8 Tram female 8.5 0
9 9 Tien female 8.0 0
10 10 Ngoc female 9.5 0

Chúng ta cần xếp loại học lực trung bình, khá, giỏi. Chúng ta có thể mã hóa và
lưu vào cột tên là Xep.loai như sau:

> hk1$Xep.loai[diem.hk1 >=5 & diem.hk1 < 7] <- "TB"


> hk1$Xep.loai[diem.hk1 >=7 & diem.hk1 < 8] <- "Kha"
> hk1$Xep.loai[diem.hk1 >=8.0] <- "Gioi"
> hk1
23
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

id name gender diem.hk1 Gioi.tinh Xep.loai


1 1 Minh male 7.0 1 Kha
2 2 Quan male 8.8 1 Gioi
3 3 Phuc male 9.0 1 Gioi
4 4 Linh female 5.0 0 TB
5 5 Vy female 6.0 0 TB
6 6 Tu female 6.8 0 TB
7 7 Mai female 7.5 0 Kha
8 8 Tram female 8.5 0 Gioi
9 9 Tien female 8.0 0 Gioi
10 10 Ngoc female 9.5 0 Gioi

2.4.4 Bài tập

Bài tập 2.4.1. Nhập bảng số liệu sau vào R theo 3 cách

a) Sử dụng hàm c() và data.frame().

b) Sử dụng hàm edit().

c) Sử dụng hàm scan().

d) Xuất dữ liệu đã nhập và lưu dưới dạng file text và file excel.

Bảng số liệu về thu nhập của 10 người (đơn vị: triệu đồng).

24
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

STT Thu.nhap Gioi.tinh Trinh.do


1 2.1 nu Khac
2 2.5 nam Khac
3 2 nam Khac
4 4.1 nu Phothong
5 4.2 nam Phothong
6 4.5 nu Phothong
7 4 nam Phothong
8 11 nu Daihoc
9 8 nam Daihoc
10 9 nu Daihoc
Bài tập 2.4.2. Dùng bảng số liệu ở bài trên thực hiện các yêu cầu sau:

1. Mã hóa giới tính: nam = 1, nu = 0.

2. Mã hóa biến trình độ: Daihoc = 2, phothong = 1, khac = 0.

3. Sắp xếp dữ liệu tăng dần và giảm dần theo thu nhập.

4. Rút trích dữ liệu:

a) Xuất ra phần tử ở vị trí dòng 8, cột 2;


b) Trích ra dòng 8 và trích ra cột 2.
c) Rút ra toàn bộ dữ liệu ngoại trừ cột 1.
d) Rút ra cột thu nhập và cột trình độ.
e) Rút trích 2 tập dữ liệu với điều kiện giới tính nam; nữ riêng.
f) Rút trích tập dữ liệu với điều kiện giới tính nữ và trình độ đại học.
g) Rút trích tập dữ liệu với điều kiện giới tính nữ hoặc trình độ đại học.
h) Rút trích tập dữ liệu với điều kiện giới tính nữ và có thu nhập từ 8 triệu đến
15 triệu đồng.

5. Tạo biến mới đổi đơn vị tiền Việt Nam sang tiền USD với tỷ giá 1USD = 22700VND.

Bài tập 2.4.3. Đọc dữ liệu dưới dạng excel có tên là “Obesity.csv” trong thư mục
Datafiles) vào R, rồi gọi tên là “data”.
25
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

1. Xác định số dòng và số cột trong data.

2. Tạo ra một biến mới gọi là “osteo”, thỏa điều kiện sau đây: nếu tscore1<=-2.50
thì osteo có giá trị là “Yes”, nếu tscore1 cao hơn -2.50 thì osteo có giá trị là
“No”.

3. Tạo một biến mới và gọi là “obesity”, sao cho obesity có giá trị theo điều kiện
sau đây:
Nếu bmi bằng hoặc cao hơn 30 thì obesity có giá trị là “Obese”.
Nếu bmi từ 25 đến 29.9 thì obesity có giá trị là “Overweight”.
Nếu bmi thấp hơn 25 thì obesity có giá trị là “Normal”.

2.5 Mô tả dữ liệu

2.5.1 Mô tả dữ liệu bằng biểu đồ

• Biểu đồ thanh - cột

Trong R, để vẽ biểu đồ cột ta dùng lệnh barplot()


barplot(height, names.arg, legend.text, beside, horiz, density, col, main,
xlab, ylab, xlim, ylim,...)
trong đó,

- height: là một vector hay một ma trận số liệu cần vẽ.

- names.agr: đặt tên dưới các cột hoặc nhóm.

- legend.text:(TRUE hoặc FALSE) tạo chú thích cho biểu đồ.

- beside: TRUE hoặc FALSE (mặc định là FALSE). Vẽ các cột chồng lên nhau
hay là xếp bên cạnh nhau.

- horiz: TRUE hoặc FALSE (mặc định là FALSE): Vẽ các cột nằm ngang hay là
thẳng đứng (mặc định là thẳng đứng).

- density: tạo mật độ cho các cột bằng các nét gạch chéo.

- main: đặt tên biểu đồ; xlab, ylab: tên trục hoành, trục tung;

- xlim, ylim: đặt giới hạn các trục;

- col: thêm các màu sắc,. . .


26
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Ví dụ 2.9. Bảng số liệu sau đây là phân phối mức độ giáo dục cao nhất cho những
người từ 25 đến 34 tuổi. Vẽ biểu đồ thanh để mô tả biến Percent.

# Input data
> Education = c(’Not HS’, ’HS’, ’College’, ’Associate’, ’Bachelor’,
’Advanced’)
> Education
[1] "Not HS" "HS" "College" "Associate" "Bachelor" "Advanced"
> Count = c(4.6, 11.6, 7.4, 3.3, 8.6, 2.5)
> Count
[1] 4.6 11.6 7.4 3.3 8.6 2.5
> Percent = c(11.1, 30.5, 19.5, 8.7, 22.6, 6.6)
> Percent
[1] 11.1 30.5 19.5 8.7 22.6 6.6
> level.edu = data.frame(Education, Count, Percent)
> level.edu
# Ve tho
> barplot(Percent)
# Them mau sac
> barplot(Percent,col=c(’red’,’blue’,’yellow’,’orange’,’green’,’brown’))
# Them ten cac cot
> barplot(Percent,col=rainbow(6),names.arg=Education)
# Them ten truc Ox
27
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> barplot(Percent,col=rainbow(6),names.arg=Education,xlab=’Education
Degree’)
# Them ten truc Oy
> barplot(Percent,col=rainbow(6),names.arg=Education,xlab=’Education
Degree’,ylab=’Percent (%)’)
# Them ten cho bieu do
> barplot(Percent,col=rainbow(6),names.arg=Education,xlab=’Education
Degree’,ylab=’Percent (%)’,main=’The distribution of the highest
level of education’)
# Noi rong truc Oy
> barplot(Percent,col=rainbow(6),names.arg=Education,xlab=’Education
Degree’,ylab=’Percent (%)’,main=’The distribution of the highest
level of education’,ylim=c(0,40))
# Tao chu thich
> barplot(Percent,col=rainbow(6),names.arg=Education,xlab=’Education
Degree’,ylab=’Percent (%)’,main=’The distribution of the highest
level of education’,ylim=c(0,40),legend.text = Education)
# Dan cac gia tri
> x = barplot(Percent,col=rainbow(6),names.arg=Education,xlab=
’Education Degree’,ylab=’Percent (%)’,main=’The distribution of
the highest level of education’,ylim=c(0,40),legend.text = Education)
> text(x,y=Percent+1, labels = Percent)

28
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Tương tự các bạn vẽ biểu đồ cột cho biến count.

• Biểu đồ tròn

Sử dụng lệnh pie(x, labels, density, col, main,...)


Ví dụ 2.10. Vẽ biểu đồ tròn cho biến Percent

> pie(Percent, col = rainbow(6),labels = Education, main = ’The


distribution of the highest level of education’)
# Dan them tri so
> phantram = paste(Education, Percent, sep = " ")
> phantram
[1] "Not HS 11.1" "HS 30.5" "College 19.5" "Associate 8.7"
[5] "Bachelor 22.6" "Advanced 6.6"
> pie(Percent, col = rainbow(6), labels = phantram, main = ’The distribution
of the highest level of education’)
29
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

• Biểu đồ phân bố thân lá

Biểu đồ thân lá thường được dùng để mô tả phân bố của số liệu có kích thước
nhỏ. Hàm sử dụng: stem(x, scale) hoặc stem.leaf(data, unit) trong package
“aplpack”, trong đó

30
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

- x, data: vector số liệu cần vẽ.


- scale: điều chỉnh đồ dài của phần thân.
- unit: đơn vị lá.

Ví dụ 2.11. Cho số liệu về tỷ lệ biết chữ của một số quốc gia Hồi giáo

Đọc file literacy rates.csv, thực hiện các yêu cầu sau

a) Vẽ biểu đồ thân lá mô tả biến Female (tỷ lệ biết chữ của nữ).


b) Vẽ biểu đồ thân lá mô tả biến Male (tỷ lệ biết chữ của nam)
c) Vẽ biểu đồ thân lá cho cả hai biến trên cùng một thân để so sánh biến Male
và biến Female. Biểu đồ này được gọi là back to back stem plot (dùng hàm
stem.leaf.backback(x,y))

> literacy = read.csv(file.choose(), header = TRUE)


> literacy
Country Female Male
1 Algeria 60 78
2 Bangladesh 31 50
3 Egypt 46 68
4 Iran 71 85
5 Jordan 86 96
6 Kazakhstan 99 100
7 Lebanon 82 95
31
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

8 Libya 71 95
9 Malaysia 85 92
10 Moroco 38 68
11 Saudi Arabia 70 84
12 Syria 68 89
13 Tajikistan 99 100
14 Tunisia 63 83
15 Turkey 78 94
16 Uzbekistan 99 100
17 Yemen 29 70
> stem(literacy$Female, scale=2)

The decimal point is 1 digit(s) to the right of the |

2 | 9
3 | 18
4 | 6
5 |
6 | 038
7 | 0118
8 | 256
9 | 999

> install.packages("aplpack")
> library(aplpack)
> stem.leaf(literacy$Female, unit = 1)
1 | 2: represents 12
leaf unit: 1
n: 17
1 2 | 9
3 3 | 18

32
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

4 4 | 6
5 |
7 6 | 038
(4) 7 | 0118
6 8 | 256
3 9 | 999
#c)
> stem.leaf.backback(literacy$Female, literacy$Male, m = 1, unit = 1)
______________________________
1 | 2: represents 12, leaf unit: 1
literacy$Female
literacy$Male
______________________________
1 9| 2 |
3 81| 3 |
4 6| 4 |
| 5 |0 1
7 830| 6 |88 3
(4) 8110| 7 |08 5
6 652| 8 |3459 (4)
3 999| 9 |24556 8
| 10 |000 3
______________________________
n: 17 17
______________________________

• Biểu đồ phân bố histogram Khác với biểu đồ thân lá, biểu đồ histogram
thường được dùng để mô tả bộ số liệu có kích thước lớn. Để vẽ histogram, ta
dùng lệnh hist()
hist(x, breaks,freq,include.lowest,right,labels, ...)
trong đó,
x: dữ liệu cần vẽ histogram.

33
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

breaks: thiết lập cách phân tổ dữ liệu.


freq: TRUE hoặc FALSE (mặc định là TRUE). Nếu freq=T vẽ histogram tần số (mặc
định). Nếu freq=F thì vẽ histogram tần suất.
right: TRUE hoặc FALSE (mặc định là TRUE). Nếu right =TRUE chia tổ theo kiểu
(a;b]. Ngược lại nếu right=F thì phân tổ có dạng [a, b).
include.lowest: TRUE hoặc FALSE (mặc định là TRUE),bao gồm giá trị nhỏ
nhất nếu right=T. Ngược lại, có bao gồm giá trị lớn nhất nếu right=F.
labels: TRUE hoặc FALSE (mặc định là FALSE) hiện thị các tần số hoặc tần suất
lên phía trên các cột của histogram.

Ví dụ 2.12. Cho số liệu về lợi nhuận của các cửa hàng bán lẻ của một công ty như
sau. Đơn vị tính : Triệu đồng
20 35 23 52 47 31 27 44 55 24
34 58 49 60 36 43 22 25 48 56
56 41 24 58 27 46 54 39 35 42
43 22 46 51 48 42 51 44 40 31
29 46 30 49 52 47 33 51 41 43

a) Phân tổ số liệu trên thành 4 tổ và khoảng cách tổ bằng nhau. Trình bày kết
quả trên bảng tần số, tần suất.

b) Vẽ biểu đồ histogram minh họa cho câu a).

> phanto=cut(x,breaks=4,right=F,include.lowest=T)
> tanso = table(phanto)
> tanso
phanto
[20,30) [30,40) [40,50) [50,60]
10 9 19 12
> tansuat=prop.table(tanso)
> tansuat
phanto
[20,30) [30,40) [40,50) [50,60]
0.20 0.18 0.38 0.24

34
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> hist(x, breaks=4, right=F, include.lowest=T, labels=T, ylim=c(0,25),


col="lightblue", main=c("Histogram of profit"), xlab="Profit")

> ## Histogram cho tan suat va them duong mat do xac suat
> hist(x,breaks=4,freq=F,right=F,labels=T,ylim=c(0,0.05),col="lightblue",
main=c("Histogram of profit"),xlab="Profit")
> lines(density(x),col=’red’)

35
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Tự thực hành ví dụ sau: Cho số liệu về chỉ số IQ của 60 học sinh lớp 5 như sau:

145 139 126 122 125 130 96 110 118 118


101 142 134 124 112 109 134 113 81 113
123 94 100 136 109 131 117 110 127 124
106 124 115 133 116 102 127 117 109 137
117 90 103 114 139 101 122 105 97 89
102 108 110 128 114 112 114 102 82 101

a) Vẽ biểu đồ phân bố tần số histogram


b) Vẽ biểu đồ phân bố tần suất histogram và gắn thêm đường mật độ. Nhận xét
thông tin nhận được.

• Biểu đồ chuỗi thời gian

Biểu đồ chuỗi thời gian thường mô tả sự biến động của số liệu theo thời gian, phát
hiện ra xu hướng cũng như tính mùa vị của dữ liệu.
36
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Hàm sử dụng: ts(data, start, end, frequency ) và hàm plot.ts(ts, col,


type,lwd, lty, pch, main, xlab, ylab, xlim, ylim, . . . ).

Trong đó, hàm ts() dùng để định nghĩa chuỗi thời gian với thời điểm bắt đầu bằng
start và thời điểm kết thúc bằng end và frequency = 1 (chuỗi thời gian là 1 năm),
12 (chuỗi thời gian là 12 tháng), 4 (chuỗi thời gian là quý). ts: các số liệu chuỗi
thời gian được định nghĩa hàm ts().
type: loại đồ thị cần vẽ.
type = "p": point (vẽ điểm);
type = "l": lines (vẽ đường);
type= "b": both (vẽ cả đường và điểm);
type= "o": overplotted (đường điểm dính liền);
type= "h": histogram (có dạng gậy thẳng đứng);
type= "s": step (dạng bước nhảy);
type= "n": no (không vẽ gì hết);
lty: lines type (nét đường): nét liền, nét đứt, nét chấm chấm, nét gạch gạch,. . .
lwd: lines width (độ dày của đường);
pch: plot character (kiểu ký tự điểm): tròn, tam giác, vuông, kim cương,. . .

Ví dụ 2.13. Cho số liệu về nhiệt độ trung bình hằng năm tại hai thành phố Pasadena
và Redding của bang California (Mỹ). Vẽ biểu đồ chuỗi thời gian cho các biến này.
Đọc file temperature.txt.

37
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> temperature=read.table(file.choose(), header = T)


> california = ts(temperature, start = 1951, end = 2000, frequency = 1)
> plot.ts(california[, -1], col = "red", type = "l", lty = 2, lwd = 3,
xlab = "Year", main = "Average Temperature in California")

38
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

• Biểu đồ tán xạ
Biểu đồ tán xạ dùng để thể hiện mối quan hệ của hai biến định lượng.
Hàm sử dụng: plot(x, y, type, lty, lwd, pch, main, xlab, ylab, xlim, ylim,
col, ...)

Ví dụ 2.14. Trong package MASS, có một dataset tên là cats, bao gồm các biến
Sex, Bwt (đơn vị kg), Hwt (g).

> library(MASS)
> data(cats)
> cats
> plot(cats$Bwt, cats$Hwt, col=cats$Sex)
> abline(lm(cats$Hwt~cats$Bwt), col = ’blue’) # Duong hoi quy tuyen tinh
> plot(cats$Bwt, cats$Hwt, col=cats$Sex, pch=16)
> abline(lm(cats$Hwt~cats$Bwt), col = ’blue’)
39
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> cor(cats$Bwt, cats$Hwt) # He so tuong quan


[1] 0.8041274

40
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

2.5.2 Mô tả dữ liệu bằng các đặc trưng thống kê

Đặc trưng thống kê Hàm


Trung bình mean()
Trung vị median()
Phương sai var()
Độ lệch chuẩn sd()
Phân vị quantile(x, probs)
Phân vị thứ nhất Q1 quantile(x, probs = 0.25, type)
Phân vị thứ hai Q2 quantile(x, probs = 0.5, type)
Phân vị thứ ba Q3 quantile(x, probs = 0.75, type)
Độ trải giữa IQR IQR()
Giá trị nhỏ nhất min()
Giá trị lớn nhất max()
Tóm lược(min, max, Q1, median, Q2, Q3) summary()
Tần số table()
Tần suất prop.table()

Lưu ý: Trong R cung cấp tới 9 phương pháp để ước lượng các phân vị thông qua đối
số type. Mặc định type =7, trong khi phương pháp tính toán phân vị được giảng trên
lớp thì tương ứng với type = 2.

2.5.3 Biểu đồ hộp và outliers

Ví dụ 2.15. Here are the scores on the first exam in an introductory statistics course for
10 students:

80 75 92 85 75 98 90 75 80 90

a) Find the mean, median, variance, standard deviation, Q1, Q3, IQR and summary
for these firstexam scores.

b) Make a table of frequency and relative frequency for the data above

> score = c(80,75,92,85,75,98,90,75,80,90) # Nhap so lieu

41
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> score
[1] 80 75 92 85 75 98 90 75 80 90
> mean(score) # Tinh trung binh
[1] 84
> median(score) # Tinh trung vi
[1] 82.5
> var(score) # Tinh phuong sai
[1] 67.55556
> sd(score) # Tinh do lech chuan
[1] 8.219219
> quantile(score, probs = 0.25) # Tinh Q1 theo type = 7
25%
76.25
> quantile(score, probs = 0.25, type = 2) # Tinh Q1 theo type = 2
25%
75
> quantile(score, probs = 0.75) # Tinh Q3 theo type = 2
75%
90
> quantile(score, probs = 0.75, type = 2) # Tinh Q3 theo type = 2
75%
90
> IQR(score) # Tinh do trai giua IQR theo type = 7
[1] 13.75
> IQR(score, type = 2) # Tinh do trai giua IQR theo type = 2
[1] 15
> summary(score) # Tom tat so lieu bang mot lenh
Min. 1st Qu. Median Mean 3rd Qu. Max.
75.00 76.25 82.50 84.00 90.00 98.00

# Bang tan so

42
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

> tanso = table(score)


> tanso
score
75 80 85 90 92 98
3 2 1 2 1 1
# Bang tan suat = tan so/n
> tansuat = prop.table(tanso)
> tansuat
score
75 80 85 90 92 98
0.3 0.2 0.1 0.2 0.1 0.1
# Ghep tan so va tan suat thanh mot bang
> bang = cbind(tanso, tansuat)
> bang
tanso tansuat
75 3 0.3
80 2 0.2
85 1 0.1
90 2 0.2
92 1 0.1
98 1 0.1

2.5.4 Biểu đồ hộp - box-whisker plot

Biểu đồ hộp được tạo ra từ năm đặc trưng bao gồm Min, Q1, Median, Q3, Max. Trong
đó, Min và Max lần lượt là giá trị nhỏ nhất và giá trị lớn nhất khi đã loại bỏ các outliers
(các giá trị ngoại vi) ra khỏi số liệu. Outliers là các phần tử bất thường quá lớn hoặc
quá bé và chúng được xác định bằng nguyên tắc sau:

Outlier > Q3 + 1.5*IQR hoặc outlier < Q1 - 1.5*IQR

43
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Hàm sử dụng: boxplot(x, col, main, xlab, ylab, xlim, ylim,...). Ngoài ra, ta
có thể xuất các đặc trưng Min, Q1, Median, Q3, Max, khoảng ước lượng cho trung vị
và các outliers (nếu có) qua hàm boxplot.stats().

Ví dụ 2.16. Vẽ biểu đồ hộp cho dữ liệu score ở ví dụ trên.

> boxplot(score, col ="blue", xlab = "First Score", ylab = "Score",


main = "The scores on the first exam in an introductory statistics")
> boxplot.stats(score)
$stats # lan luot la Min, Q1, Median, Q3, Max
[1] 75.0 75.0 82.5 90.0 98.0

$n
[1] 10

$conf # Khoang uoc luong cho trung vi


[1] 75.0054 89.9946

$out # outliers (neu co)


numeric(0)

44
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Nhận xét: Biểu đồ hộp cho thấy không có outliers nào và biểu đồ không có râu dưới
vì Min trùng với Q1. Biểu đồ hộp cân xứng với trung vị nằm ngay chính giữa, chứng tỏ
số liệu không bị lệch.

Ví dụ 2.17. Vẽ biểu đồ hộp cho dữ liệu sau:

2.3 13.8 16.1 1.6 0.3 0.5 13.1 8.6 1.3 12.7
3.4 72.8 0.3 5.0 11.4 5.8 3.2 26.0 0.1 6.5

> x = c(2.3, 13.8, 16.1, 1.6, 0.3, 0.5, 13.1, 8.6, 1.3, 12.7, 3.4, 72.8,
0.3, 5.0, 11.4, 5.8, 3.2, 26.0, 0.1, 6.5)
> x
[1] 2.3 13.8 16.1 1.6 0.3 0.5 13.1 8.6 1.3 12.7 3.4 72.8
[13]0.3 5.0 11.4 5.8 3.2 26.0 0.1 6.5
> boxplot(x,col = "red")
> boxplot.stats(x)
45
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

$stats
[1] 0.10 1.45 5.40 12.90 26.00

$n
[1] 20

$conf
[1] 1.354729 9.445271

$out
[1] 72.8

Nhận xét: ta thấy có một giá trị outlier là 72.8. Sau khi loại bỏ giá trị oulier này
thì max = 26.0, min = 0.1, Q1 = 1.45, median = 5.4, Q3 = 12.9. Số liệu bị lệch
phải do bên phải có ít số liệu hơn bên trái.

46
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

2.5.5 Bài tập

Bài tập 2.5.1. Đọc dữ liệu Garbage.csv, số liệu một số loại chất thải rắn ở Mỹ.

1. Hãy vẽ biểu đồ cột mô tả về số lượng các loại chất thải và nhận xét thông tin nhận
được.

2. Tính tỉ lệ % các loại chất thất thải.

Bài tập 2.5.2. Đọc dữ liệu SpamTpye, số liệu một số loại thư rác được tổng hợp.

1. Hãy vẽ biểu đồ cột của biến Percent, với các cột được xếp như trong bảng và nhận
xét thông tin nhận được.

2. Hãy vẽ biểu đồ cột của biến Percent, với các cột được xếp từ cao đến thấp.

3. Vẽ biểu đồ tròn thể hiện các loại thư rác có dán số liệu và %.

Bài tập 2.5.3. Favorite colors. What is your favorite color? One survey produced the
following summary of responses to that question: blue, 42%; green, 14%; purple, 14%;
red, 8%; black, 7%; orange, 5%; yellow, 3%; brown, 3%; gray, 2%; and white, 2%. Make
a pei chart of the percents and write a short summary of the major features of your
graph.

Bài tập 2.5.4. Least-favorite colors. Refer to the previous exercise. The same study
also asked people about their least-favorite color. Here are the results: orange, 30%;
brown, 23%; purple, 13%; yellow, 13%; gray, 12%; green, 4%; white, 4%; red, 1%; black,
0%; and blue, 0%. Make a pie chart of these percents and write a summary of the results.

Bài tập 2.5.5. Bệnh tiểu đường và glucose. Người mắc bệnh tiểu đường phải theo dõi
và kiểm soát mức đường huyết của họ. Mục tiêu là duy trì glucose huyết tương trong
khoảng 90 đến 130 miligam mỗi decilit (mg/dl). Dưới đây là mức glucose huyết tương
lúc đói cho 18 bệnh nhân tiểu đường đăng ký vào lớp kiểm soát bệnh tiểu đường, năm
tháng sau khi kết thúc lớp học:

141 158 112 153 134 95 96 78 148


172 200 271 103 172 359 145 147 255

Vẽ biểu đồ thân lá cho dữ liệu trên, và mô tả các đặc trưng chính của phân phối.
47
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Nghiên cứu được mô tả trong bài về việc đo đường huyết lúc đói là 16 bệnh nhân tiểu
đường được hướng dẫn cá nhân về kiểm soát bệnh tiểu đường. Dưới đây là dữ liệu:

128 195 188 158 227 198 163 164


159 128 283 226 223 221 220 160

Tạo một thân lá back-to-back để so sánh các bệnh nhân lớp hướng dẫn và cá nhân.
Bài tập 2.5.6. Đọc dữ liệu Tonado damage thống kê về thiệt hại tài sản trung bình trên
năm của các tiểu bang ở Mỹ do lốc xoáy gây ra.

1. Liệt kê top 5 tiểu bang bị thiệt hại nhiều nhất, và top 5 tiểu bang bị thiệt hại ít
nhất.

2. Vẽ biểu đồ histogram cho data trên, với khoảng của cột là [0-10), [10-20),... Và viết
vài dòng nhận xét. Hint: breaks = c(0,10,20,30,40,...,90).

Bài tập 2.5.7. Đốt nhiên liệu trong các nhà máy điện hoặc xe cơ giới thải ra carbon
điôxít (CO2), góp phần vào sự nóng lên toàn cầu. Đọc file Carbon dioxide_co2 cung
cấp thông tin về lượng khí thải CO2 trên mỗi người từ các quốc gia có dân số ít nhất 20
triệu người. Vẽ biểu đồ histogram với khoảng của cột là [0,2.5), [2.5,5),.... Hint: breaks
= seq(from = 0,to = 20,by = 2.5).
Bài tập 2.5.8. Thay đổi lựa chọn các lớp có thể thay đổi diện mạo của một biểu đồ.
Dưới đây là một ví dụ trong đó một sự thay đổi nhỏ trong các lớp, không có thay đổi
về số lượng lớp, có ảnh hưởng quan trọng đến biểu đồ. Dữ liệu là mức độ axit (được đo
bằng pH) trong 105 mẫu nước mưa. Nước cất có pH 7.00. Khi nước trở nên axit hơn,
độ pH giảm xuống. Độ pH của nước mưa rất quan trọng đối với các nhà môi trường vì
vấn đề mưa axit. Đọc file Acidity of rainwater và thực hiện các thao tác sau:

1. Vẽ biểu đồ histogram cho pH với 14 khoảng bằng cách dùng giới hạn của các lớp
4.2, 4.4, ..., 7.0.

2. Vẽ biểu đồ histogram cho pH với 14 khoảng bằng cách dùng giới hạn của các lớp
4.14, 4.34, ..., 6.94.

Bài tập 2.5.9. Phụ nữ học nhiều hơn nam giới? Chúng tôi đã hỏi các sinh viên trong
một lớp đại học năm thứ nhất, họ đã học bao nhiêu phút trong một tuần thông thường.
Dưới đây là câu trả lời của các mẫu ngẫu nhiên của 30 phụ nữ và 30 nam giới trong lớp
48
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Women Men
180 120 180 360 240 90 120 30 90 200
120 180 120 240 170 90 45 30 120 75
150 120 180 180 150 150 120 60 240 300
200 150 180 150 180 240 60 120 60 30
120 60 120 180 180 30 230 120 95 150
90 240 180 115 120 200 120 120 180

Vẽ biểu đồ thân lá back-to-back cho dữ liệu.


Bài tập 2.5.10. Bảng số liệu đưa ra thời gian sống sót sau 72 ngày chuột (guinea pigs)
sau khi chúng được tiêm trực khuẩn lao trong một thí nghiệm y tế. Tạo một biểu đồ
hộp và mô tả hình dạng, trung tâm và sự lan truyền của sự phân bố thời gian sống sót.
Có giá trị ngoại lai hay không?

43 45 53 56 56 57 58 66 67 73 74 79 80 80 81
81 81 82 83 83 84 88 89 91 91 92 92 97 99 99
100 100 101 102 102 102 103 104 107 108 109 113 114 118
121 123 126 128 137 138 139 144 145 147 156 162 174 178
179 184 191 198 211 214 243 249 329 380 403 511 522 598

Bài tập 2.5.11. Tàu lượn siêu tốc Mania. Báo cáo Tổng điều tra Tàu lượn siêu tốc
Thế giới liệt kê số lượng tàu lượn siêu tốc sau đây trên mỗi lục địa. Biểu diễn dữ liệu
bằng đồ thị, sử dụng biểu đồ Pareto và biểu đồ thanh ngang.

Quốc gia Số tàu lượn


Africa 17
Asia 315
Australia 22
Europe 413
North America 643
South America 45
Bài tập 2.5.12. Sử dụng năng lượng thế giới. Các tỷ lệ phần trăm sau đây biểu thị
nguồn năng lượng được sử dụng trên toàn thế giới. Xây dựng biểu đồ Pareto và biểu đồ
thanh dọc cho năng lượng được sử dụng.
49
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Năng lượng Phần trăm


Petroleum 39.8
Coal 23.2
Dry natural gas 22.4
Hydroelectric 7.0
Nuclear 6.4
Other (wind, solar, etc.) 1.2

Bài tập 2.5.13. Các thành phần của Lớp vỏ Trái đất. Các yếu tố sau đây bao gồm
vỏ trái đất, lớp rắn ngoài cùng. Minh họa thành phần của vỏ trái đất với một biểu đồ
hình tròn.

Oxygen 45.6
Silicon 27.3
Aluminum 8.4
Iron 6.2
Calcium 4.7
Other 7.8

Bài tập 2.5.14. Vẽ biểu đồ chuỗi thời gian để biểu thị dữ liệu về số chuyến khởi hành
của các hãng hàng không (tính bằng triệu) trong những năm nhất định. Trong những
năm qua, số lượng các chuyến khởi hành tăng, giảm hay là như nhau?

Năm 1996 1997 1998 1999 2000 2001 2002


Số chuyến bay 7.9 9.9 10.5 10.9 11.0 9.8 10.1

Bài tập 2.5.15. Các cuộc tranh luận của Tổng thống. Dữ liệu cho biết số lượng
(tính bằng triệu) người xem đã xem các cuộc tranh luận Tổng thống đầu tiên và thứ
hai. Xây dựng hai biểu đồ chuỗi thời gian và so sánh kết quả.

Năm 1992 1996 2000 2004


Thứ nhất 62.4 36.1 46.6 62.5
Thứ hai 69.9 36.3 37.6 46.7

Bài tập 2.5.16. Những số liệu sau đây đại diện cho nhiệt độ cao kỷ lục tính bằng độ
Fahrenheit (o F ) cho mỗi trong số 50 tiểu bang. Vẽ biểu đồ histogram.

50
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

112 100 127 120 134 118 105 110 109 112
110 118 117 116 118 122 114 114 105 109
107 112 114 115 118 117 118 122 106 110
116 108 110 121 113 120 119 111 104 111
120 113 120 117 105 110 118 112 114 114

Bài tập 2.5.17. Chúng ta thu thập số liệu về độ tuổi và cholesterol từ một nghiên
cứu ở 50 bệnh nhân mắc bệnh cao huyết áp. Các số liệu này được lưu trong một text
file có tên là chol.txt.

Số liệu này như sau: cột 1 là mã số của bệnh nhân, cột 2 là giới tính, cột 3 là body mass
index (tỉ số trọng lượng) (viết tắt là bmi), cột 4 là high density cholesterol (cholesterol
mật độ cao) (viết tắt là hdl), kế đến là low density cholesterol (cholesterol mật độ thấp)
(viết tắt là ldl), total cholesterol (tổng số cholesterol) (viết tắt là tc) và triglycerides
(chất béo trung tính) (viết tắt là tg).
1. Cho biết tần số của giới tính (bao nhiêu nam và bao nhiêu nữ) (dùng hàm table()),
vẽ biểu đồ thể hiện tần số bằng cột và bằng dòng.

2. Chia bệnh nhân thành 4 nhóm dựa theo độ tuổi. (dùng hàm cut()). Có bao nhiêu
bệnh nhân trong từng độ tuổi và từng giới tính. Vẽ biểu đồ cột về tần số của hai
biến này.

3. Vẽ biểu đồ tần số của độ tuổi bằng biểu đồ tròn.

4. Vẽ biểu đồ tần số của độ tuổi bằng biểu đồ histogram.

51
Chương 3

MỘT SỐ PHÂN PHỐI XÁC SUẤT


THÔNG DỤNG

3.1 Biến ngẫu rời rạc

Chúng ta sẽ tìm hiểu về một số quy luật phân phối xác suất rời rạc thông dụng và có
nhiều ứng dụng thực tế, gồm: phân phối (bố) siêu bội, phân phối nhị thức và phân phối
Poisson. Thật ra, chúng ta có nhiều quy luật phân phối rời rạc, nhưng trong khuôn khổ
chương trình học chúng ta chỉ khảo sát phân phối nhị thức.

3.1.1 Phân phối nhị thức (Binomial distribution)

Định nghĩa 3.1.1.

i. Phép thử Bernoulli là thí nghiệm hay phép thử chỉ có hai kết quả và thường được
sử dụng để xây dựng một chuỗi các phép thử ngẫu nhiên.

ii. Phép thử n Bernoulli là một nhóm các phép thử Bernoulli thỏa mãn 3 điều kiện:
các phép thử trong chuỗi là độc lập; mỗi phép thử chỉ có 2 kết quả là “thành công”
và “thất bại”; xác suất thành công của mỗi phép thử là p và không đổi.

iii. Biến ngẫu nhiên nhị thức chính là số lần thành công của phép thử n Bernoulli,
tham số 0 < p < 1 với xác suất tương ứng:

P(X = k) = Cnk pk (1 − p)n−k , k = 0, 1, . . . , n.

Ký hiệu: X ∼ B(n; p).

52
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

iv. Các đặc trưng thống kê: kỳ vọng và phương sai của X lần lượt được xác định như
sau:
E(X) = np, Var(X) = np(1 − p).

Phân phối nhị thức trong R

Một số lệnh mặc định trong R cho biến ngẫu nhiên X ∼ B(n; p):

dbinom(a, size=n, prob=p) # tính P(X=a)


pbinom(a, size=n, prob=p) # tính P(X<=a)
pbinom(a, size=n, prob=p, lower.tail = FALSE) # tính P(X>a)
qbinom(u, size=n, prob=p) # tính inf{x: P(X<=x) >= u}
rbinom(k, size=n, prob=p) # phát sinh ra k quan trắc từ phân phối B(n,p)

Lưu ý: lower.tail = T tương ứng với dấu < trong biểu thức xác suất (P(X < a)) và
lower.tail = F tương ứng với dấu > trong biểu thức xác suất (P(X > a)).
Ví dụ 3.1. Xác suất để một con gà đẻ trứng trong ngày là 0.6. Nuôi 5 con gà. Tính xác
suất để trong một ngày

a) không có con nào đẻ trứng.

b) có 5 con đẻ trứng.

c) có ít nhất 1 con đẻ trứng.

d) có nhiều nhất 2 con đẻ trứng.

#Code R
# X la so ga de trong mot ngay nen X co pp nhi thuc voi n = 5 va p = 0.6
#a) P(X=0)
dbinom(0, size=5, prob=0.6)
#b) P(X=5)
dbinom(5, size=5, prob=0.6)
#c) P(X>=1) = P(X>1) + P(X=1)
pbinom(1, size=5, prob=0.6, lower.tail = F)+dbinom(1, size=5, prob=0.6)
#d) P(X<=2)
pbinom(2, size=5, prob=0.6)

53
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Ví dụ 3.2. Tung một đồng xu đồng chất liên tiếp 10 lần. Gọi X là số lần xuất hiện mặt
ngửa. Ta có X ∼ B(10; 0.5)

a) Tính xác suất để có đúng 6 mặt ngửa xuất hiện.

b) Tính xác suất để có nhiều nhất 8 mặt ngửa xuất hiện.

c) Tính xác suất để có ít nhất 3 mặt ngửa xuất hiện.

d) Tìm x sao cho P(X ≤ x) = 0.62.

e) Tìm x sao cho P(X > x) = 0.95

f) Phát sinh ngẫu nhiên 1000 giá trị của X . Vẽ biểu đồ phân bố tần số cho biến X.
Nhận xét?

Giải

#a P(X=6)
dbinom(6,10,0.5)
#b P(X<=8)
pbinom(8,10,0.5)
#c P(X>=3)
pbinom(3,10,0.5,lower.tail = F)+dbinom(3,10,0.5)
#d tim x
qbinom(0.62,10,0.5)
#e
qbinom(0.95,10,0.5, lower.tail = F)
#f
X = rbinom(1000,10,0.5)
tanso = table(X)
tanso
barplot(tanso,xlab="X",ylab="Frequency",main="Frequency of X",col="lightblue")

54
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Nhận xét: Nhìn vào biểu đồ cột thể hiện phân bố tần số của 1000 số liệu ngẫu nhiên
của biến nhị thức X, ta thấy nó có dạng giống hình chuông. Điều đó cho thấy biến nhị
thức xấp xỉ luật phân phối chuẩn khi k càng lớn.

3.1.2 Bài tập

Bài tập 3.1.1. Số liệu thống kê của một hãng sản xuất ô tô cho thấy 10% sản phẩm của
hãng bán ra trong vòng một năm cần được cung cấp dịch vụ bảo hành. Trong tuần qua,
một đại lý của hãng bán được 12 chiếc ô tô. Tính xác suất để trong vòng một năm:

a) Không có chiếc nào được bảo hành.

b) Có đúng một chiếc được bảo hành.

c) Có trên 2 chiếc cần bảo hành.

d) Có nhiều nhất 5 chiếc được bảo hành.

e) Tính trung bình và độ lệch chuẩn của sản phẩm được bảo hành.
55
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Bài tập 3.1.2. Tung một con xúc xắc liên tiếp 12 lần. Gọi X là số lần xuất hiện mặt 6
chấm. Tính xác suất để X lấy giá trị trong đoạn [7;9].
Bài tập 3.1.3. Một cuộc đều tra gần đây cho biết tỷ lệ sinh viên sử dụng Wikipedia làm
nguồn tài liệu để nghiên cứu và tham khảo là 44.7%. Gọi X là số sinh viên sử dụng
Wikipedia trong số 31 sinh viên được chọn ngẫu nhiên.

a) Tính xác suất để có 17 sinh viên sử dụng Wikipedia.

b) Tính xác suất để có nhiều nhất 13 sinh viên sử dụng Wikipedia.

c) Tính xác suất để có nhiều hơn 11 sinh viên sử dụng Wikipedia.

d) Tính xác suất để có ít nhất 15 sinh viên sử dụng Wikipedia.

e) Tính xác suất để có từ 16 đến 19 sinh viên sử dụng Wikipedia.

f) Tìm kỳ vọng, phương sai, độ lệch chuẩn của X.

Bài tập 3.1.4. Theo bản tin cập nhật thị trường lao động do Bộ LĐ-TB&XH cùng Tổng
cục Thống kê công bố trong quý IV-2013, tỷ lệ thất nghiệp của nhóm lao động có trình
độ đại học trở lên là 4.25%. Chọn ngẫu nhiên 30 sinh viên đã tốt nghiệp đại học trong
năm vừa qua.

a) Tính xác suất để có 2 sinh viên thất nghiệp.

b) Tính xác suất để có nhiều nhất 5 sinh viên thất nghiệp.

c) Tính xác suất để có ít nhất 26 sinh viên có việc làm.

d) Về trung bình thì có bao nhiêu sinh viên thất nghiệp?

Bài tập 3.1.5. Khi tiêm vắc-xin cho một loại bệnh, tỷ lệ trường hợp bị phản ứng lại với
vắc-xin này là 0.001. Dùng loại vắc-xin này tiêm cho 2000 người. Tính xác suất để

a) có 3 trường hợp bị phản ứng.

b) có nhiều nhất 2 trường hợp bị phản ứng.

c) có nhiều hơn 3 trường hợp bị phản ứng.

Bài tập 3.1.6. Rh là viết tắt của chữ Rhesus, đây là nhóm máu quan trọng sau nhóm
máu OAB, mang đặc điểm di truyền của mỗi cá nhân và tồn tại suốt đời. Nhóm máu
Rh có hai loại là Rh+ và Rh-. Nhóm máu Rh- rất hiếm gặp; ở Việt Nam, nhóm máu
56
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Rh- chỉ chiếm 0.04% dân số, còn nhóm máu Rh+ chiếm đến 99.96% dân số. Đặc điểm
của nhóm máu Rh này là nó chỉ có thể nhận và cho người cùng nhóm máu; đặc biệt
nếu phụ nữ có nhóm máu Rh- thì con rất dễ bị tử vong. Vì thế thai phụ sau khi sinh
đứa bé đầu tiên trong vòng 24h-72h sẽ được tiêm kháng thể và chăm sóc đặc biệt. Một
bệnh viện phụ sản trung bình mỗi ngày tiếp nhận 100 ca sinh. Tính xác suất để

a) không có trường hợp nào cần chăm sóc đặc biệt.

b) có đúng 1 trường hợp cần chăm sóc đặc biệt.

c) có nhiều hơn 1 trường hợp cần chăm sóc đặc biệt.

3.1.3 Phân phối Poisson (Poisson distribution)

Biến ngẫu nhiên X tuân theo quy luật phân phối Poisson với tham số λ > 0 nếu X
lấy các giá trị 0, 1, . . . và

e−λ λk
P(X = k) = , k = 0, 1, . . .
k!
Ký hiệu: X ∼ P (λ).

Với X ∼ P (λ), kỳ vọng và phương sai của X lần lượt được xác định như sau:

E(X) = Var(X) = λ.

Phân phối Poisson trong R

Một số lệnh mặc định trong R cho biến ngẫu nhiên X ∼ P (λ):

dpois(a, lambda) # tính P(X=a)


ppois(a, lambda) # tính P(X<=a)
ppois(a, lambda, lower.tail = FALSE) # tính P(X>a)
qpois(u, lambda) # tính inf{x: P(X<=x) >=u}
rpois(k, lambda) # phát sinh ra k quan trắc từ phân phối P(lambda)

3.1.4 Bài tập

Bài tập 3.1.7. Một trung tâm bưu điện nhận được trung bình 3 cuộc gọi điện thoại
trong mỗi phút. Tính xác suất để
57
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

a) trung tâm này nhận được 1 cuộc gọi trong 1 phút.

b) có đúng 5 cuộc gọi trong 2 phút.

c) không có cuộc gọi nào trong 30 giây.

d) có ít nhất một cuộc gọi đến trong 10 giây.

Bài tập 3.1.8. Một cử hàng cho thuê xe ô tô cho biết trung bình có 2 người đến thuê xe
vào ngày thức bảy. Giả sử cửa hàng có 4 chiếc xe ô tô. Gọi X là số khách đến thuê xe
trong ngày thứ bảy.

a) Tính xác suất để tất cả 4 ô tô đều được thuê.

b) Tính xác suất để không phải tất cả 4 ô tô đều được thuê.

c) Tính xác suất để cửa hàng không đáp ứng được số lượng ô tô theo yêu cầu của
khách hàng.

d) Vẽ đồ thị hàm khối xác suất và hàm phân phối tích lũy của X.

3.2 Biến ngẫu nhiên liên tục

3.2.1 Phân phối chuẩn (Normal distribution)

Biến ngẫu nhiên X được gọi là có phân phối chuẩn với hai tham số µ ∈ R và σ > 0,
viết là X ∼ N (µ, σ 2 ), nếu hàm mật độ của X có dạng
1 (t−µ)2
f (t) = √ e− 2σ2 , t ∈ R.
σ 2π

Trong trường hợp X ∼ N (0, 1), ta còn nói X có phân phối chuẩn tắc. Hàm mật độ của
X ∼ N (0, 1) có dạng
1 −t2
f (t) = √ e 2 , t ∈ R.

Với X ∼ N (µ, σ 2 ), ta có

• E(X) = Mode(X) = Median(X) = µ.

• Var(X) = σ 2 .
Lưu ý thêm rằng với X ∼ B(n, p) trong đó np ≥ 5 và n(1 − p) ≥ 5, ta có xấp xỉ
X ≈ N (µ, σ 2 ) với µ = np và σ 2 = np(1 − p).
58
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Phân phối chuẩn trong R

Cho X ∼ N (µ, σ 2 ).

• Tính f (x) trong đó f là hàm mật độ của X:


dnorm(x, mean =, sd =)

• Tính P(X ≤ x):


pnorm(x, mean =, sd =)

• Tính P(X > x):


pnorm(x, mean =, sd =, lower.tail = 0/FALSE)

• Phát sinh một mẫu gồm n số liệu từ phân phối của X:


rnorm(n, mean =, sd =)

• Tính inf{x : P(X ≤ x) ≥ q}:


qnorm(q, mean =, sd =, lower.tail = 1/TRUE) # 0<q<1

• Tính inf{x : P(X > x) ≥ q}:


qnorm(q, mean =, sd =, lower.tail = 0/FALSE) # 0<q<1

Ví dụ 3.3. Khoảng thời gian từ khi sản phẩm được sử dụng đến khi hư (thời gian sống
hay còn gọi là tuổi thọ) do lỗi của nhà sản xuất của một sản phẩm là biến ngẫu nhiên
X có phân phối chuẩn với trung bình bằng 15 tháng và độ lệch chuẩn là 3 tháng.

a) Vẽ đường cong mật độ của X.

b) Nếu quy định thời gian bảo hành là 12 tháng thì tỷ lệ sản phẩm cần bảo hành là
bao nhiêu phần trăm?

c) Nếu muốn tỷ lệ sản phẩm bảo hành là 2.28% thì phải quy định thời gian bảo hành
là bao nhiêu tháng?

d) Tính tỷ lệ sản phẩm có thời gian sống từ 14 tháng trở lên.

e) Tính tỷ lệ sản phẩm có thời gian sống từ 10 đến 13 tháng.

f) Phát sinh một mẫu ngẫu nhiên gồm 1000 giá trị từ biến X. Vẽ biểu đồ histogram.

# ta co X co pp chuan mean = 15 va sd = 3
#a)
59
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

curve(dnorm(x, mean = 15, sd = 3), from = 5, to = 25, col = "red",


ylab = "Density", main = "Density Curve of X ")
#b)
pnorm(12, mean = 15, sd = 3)
paste(round(pnorm(12, mean = 15, sd = 3)*100,1),"%", sep = " ")
#c) Tim x sao cho P(X<=x)=0.0228
qnorm(0.0228, mean = 15, sd = 3)
#d)
pnorm(14, mean = 15, sd = 3, lower.tail = F)
#e)
pnorm(13, mean = 15, sd = 3) - pnorm(10, mean = 15, sd = 3)
#f)
X = rnorm(1000, mean = 15, sd = 3)
hist(X, col = "lightblue", ylab = "Frequency")

60
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

3.2.2 Bài tập

Bài tập 3.2.1. Cho Z ∼ N (0; 1). Tính

a) P(Z > 2.64).

b) P(0 ≤ Z < 0.87).

c) P(|Z| > 1.39).

Bài tập 3.2.2. Các kết quả của bài kiểm tra chỉ số thông minh (IQ) cho các học sinh
của một trường tiểu học cho thấy IQ của các học sinh này tuân theo phân phối chuẩn
với các tham số là µ = 100 và σ 2 = 225. Tính tỉ lệ học sinh có điểm IQ nhỏ hơn 91 hoặc
lớn hơn 130 là bao nhiêu?
Bài tập 3.2.3. Đường kính của một chi tiết máy do một máy tiện tự động sản xuất có
phân phối chuẩn với trung bình µ = 50mm và độ lệch chuẩn σ = 0.05mm. Chi tiết máy
được xem là đạt yêu cầu nếu đường kính không sai quá 0.1mm.

a) Tính tỉ lệ sản phẩm đạt yêu cầu.

b) Lấy ngẫu nhiên 3 sản phẩm. Tính xác suất có ít nhất một sản phẩm đạt yêu cầu.

Bài tập 3.2.4. Trọng lượng X (tính bằng gam) của một loại trái cây có phân phối chuẩn
N (µ, σ 2 ) với µ = 500 (gam) và σ 2 = 16 (gam2 ). Trái cây thu hoạch được phân loại theo
trọng lượng như sau:

a) loại 1: trên 505 gam,

b) loại 2: từ 495 đến 505 gam,

c) loại 3: dưới 495 gam.

Tính tỉ lệ mỗi loại.


Bài tập 3.2.5. Tuổi thọ của một loại sản phẩm giả sử có phân phối chuẩn với trung bình
là 1000 giờ và độ lệch chuẩn là 10 giờ.

a) Công ty ấn định thời gian bảo hành sản phẩm là 980 giờ. Tính tỷ lệ sản phẩm cần
được bảo hành.

b) Mức lãi một sản phẩm được bán là 50 ngàn đồng, nhưng nếu sản phẩm bị hỏng thì
chi phí bảo hành là 500 ngàn đồng. Hãy tính mức lãi trung bình cho mỗi sản phẩm
bán ra.
61
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

c) Công ty muốn giảm tỉ lệ sản phẩm còn một nữa, để đạt được mong muốn thì phải
ấn định thời gian bảo hành sản phẩm là bao nhiêu?

Bài tập 3.2.6. Thời gian mang thai của con người có phân phối xấp xỉ chuẩn với trung
bình là 266 ngày và độ lệch chuẩn là 16 ngày.

a) Vẽ đường cong mật độ.

b) Có bao nhiêu phần trăm người có thời gian mang thai ít hơn 240 ngày.

c) Có bao nhiêu phần trăm người có thời gian mang thai trong khoảng từ 240 đến 270
ngày.

Bài tập 3.2.7. Horse pregnancies are longer. Bigger animals tend to carry their young
longer before birth. The length of horse pregnancies from conception to birth varies
according to a roughly Normal distribution with mean 336 days and standard deviation
3 days. Answer the following questions.

a) What percent of horse pregnancies are between 327 and 345 days?

b) What percent of horse pregnancies are longer than 339 days?

Bài tập 3.2.8. High IQ scores. The Wechsler Adult Intelligence Scale (WAIS) is the
most common “IQ test”. The scale of scores is set separately for each age group and
is approximately Normal with mean 100 and standard deviation 15. The organization
MENSA, which calls itself “the high IQ society”, requires a WAIS score of 130 or higher
for membership. What percent of adults would qualify for membership?
Bài tập 3.2.9. Nghiên cứu chiều cao của những người trưởng thành, người ta nhận thấy
rằng chiều cao đó tuân theo quy luật phân phối chuẩn với trung bình là 175 cm và độ
lệch chuẩn là 4 cm. Hãy xác định:

a) tỉ lệ người trưởng thành có chiều cao trên 180 cm.

b) tỉ lệ người trưởng thành có chiều cao từ 166 cm đến 177 cm.

c) tìm h, nếu biết rằng 33% người trưởng thành có chiều cao dưới mức h.

d) giới hạn biến động chiều cao của 90% người trưởng thành xung quanh giá trị trung
bình của nó.

Bài tập 3.2.10. Giá cổ phiếu của các công ty được coi là một biến ngẫu nhiên tuân theo
quy luật phân phối chuẩn với trung bình là 30$ và độ lệch chuẩn là 8.2$.
62
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

a) Tính xác suất để cổ phiếu của một công ty bất kỳ tối thiểu là 40$.

b) Tính xác suất để cổ phiếu của một công ty bất kỳ không quá 20$.

c) Những công ty có giá cổ phiếu cao thuộc top 10% trên thị trường chứng khoán sẽ
được vào nhóm công ty phát đạt. Tính giá cổ phiếu tối thiểu để một công ty được
xếp vào nhóm công ty phát đạt trên.

Bài tập 3.2.11. Thời gian (tính bằng tháng) từ lúc vay đến lúc trả tiền của khách hàng
tại một ngân hàng là biến ngẫu nhiên có phân phối chuẩn với trung bình bằng 18 tháng
và độ lệch chuẩn là 4 tháng.

a) Tính tỷ lệ khách hàng trả tiền cho ngân hàng trong khoảng thời gian 10 đến 19
tháng.

b) Tính tỷ lệ khách hàng trả tiền cho ngân hàng trong khoảng thời gian trên 1 năm.

c) Khoảng thời gian tối thiểu là bao nhiêu để tỷ lệ khách hàng trả tiền cho ngân hàng
trong khoảng thời gian đó không quá 1%.

Bài tập 3.2.12. Trọng lượng của một loại sản phẩm do một nhà máy sản xuất là biến
ngẫu nhiên có phân phối chuẩn với trung bình bằng 50kg và phương sai là 100kg 2 .
Những sản phẩm có trọng lượng từ 45kg đến 70kg được coi là sản phẩm loại A. Tính
tỷ lệ sản phẩm loại A của nhà máy.

63
Chương 4

ƯỚC LƯỢNG THAM SỐ VÀ KIỂM


ĐỊNH GIẢ THUYẾT THỐNG KÊ

4.1 Ước lượng và kiểm định giả thuyết cho tham số trung bình của
tổng thể

Trong R về ước lượng và kiểm định cho trung bình được thực hiện chung trong một
hàm t.test():

t.test(x, mu = 0, alternative = c("two.sided", "less", "greater"), conf.level


= 0.95, ...)
trong đó,

• x: là vector số liệu của mẫu.

• mu: là giá trị trung bình cần kiểm định. Mặc định mu=0, đồng nghĩa với giả thuyết
H0 : µ = 0.

• alternative: đối tượng chọn một trong ba loại sau: two.sided, less, greater.
Mặc định là two.sided (hai phía).

• conf.level: độ tin cậy = 1-α, với α là mức ý nghĩa kiểm định. Mặc định conf.level
= 0.95.

Chú ý: Khi chỉ thực hiện ước lượng khoảng hai phía, chúng ta có thể bỏ qua đối số mu
và alternative.
Ví dụ 4.1. Trọng lượng trung bình khi xuất chuồng ở một trang trại chăn nuôi trước
kia là 3.3 kg/con. Năm nay người ta sử dụng một loại thức ăn mới, cân thử 15 con khi
64
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

xuất chuồng ta được số liệu sau

3.25 2.5 4.0 3.75 3.8 3.9 4.02 3.6 3.8 3.2 3.82 3.4 3.75 4.0 3.5

a) Hãy ước lượng trung bình trọng lượng của các con vật khi nuôi bằng thức ăn mới
với độ tin cậy 95%.

b) Nếu muốn ước lượng với độ tin cậy 99% và sai số không quá 0.2 kg thì cần cân thử
bao nhiêu con?

c) Hãy kết luận về tác dụng của loại thức ăn này với mức ý nghĩa 5%.

d) Nếu trại chăn nuôi báo cáo trọng lượng trung bình khi xuất chuồng là 3.5 kg/con
thì có chấp nhận được không? (với mức ý nghĩa 5%).

a) > trong.luong = c(3.25, 2.5, 4.0, 3.75, 3.8, 3.9, 4.02, 3.6, 3.8, 3.2,
3.82, 3.4, 3.75, 4.0, 3.5)
> t.test(trong.luong, conf.level = 0.95)

One Sample t-test

data: trong.luong
t = 34.609, df = 14, p-value = 5.785e-15
alternative hypothesis: true mean is not equal to 0
95 percent confidence interval:
3.395035 3.843632
sample estimates:
mean of x
3.619333
Kết luận: Khoảng ước lượng trung bình trọng lượng của con vật sau khi nuôi bằng
thức ăn mới với độ tin cậy 95% là từ 3.40 kg/con đến 3.84 kg/con.

b) Từ công thức sai số lề (margin of error):


s
m = zα/2 √ ,
n

trong đó, s là độ lệch chuẩn của mẫu, zα/2 là phân vị đuôi trên mức α/2 của phân

65
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

phối chuẩn tắc. Ta suy ra công thức tìm cỡ mẫu:


 z s 2
α/2
n= .
m
Theo đề bài, độ tin cậy 99%, suy ra mức ý nghĩa α = 1-0.99 = 0.01. Sai số không
quá 0.2 kg, tức là m ≤ 0.2.
Do đó,
z
α/2 s
2
n≥ .
m
> m = 0.2
> alpha = 1-0.99
> z = qnorm(alpha/2, lower.tail = FALSE)
> s = sd(trong.luong)
> n = (z*s/m)^2
> n
[1] 27.21129

Kết luận: Nếu muốn ước lượng với độ tin cậy 99% và sai số không quá 0.2 kg thì
cần cân thử 28 con.

c) Mức ý nghĩa α = 5%, suy ra độ tin cậy là 95%. Đây là bài toán kiểm định so sánh
thức ăn mới với thức ăn cũ. Ta có thể đặt giả thuyết:
(
H0 : µ = 3.3
H1 : µ 6= 3.3

> t.test(trong.luong, mu = 3.3, alternative = "two.sided", conf.level = 0.95)

One Sample t-test

data: trong.luong
t = 3.0535, df = 14, p-value = 0.008589
alternative hypothesis: true mean is not equal to 3.3
95 percent confidence interval:
3.395035 3.843632
sample estimates:
mean of x
66
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

3.619333

Kết luận: ta thấy chỉ số p-value= 0.008589 < α = 0.05, nên bác bỏ giả thuyết H0 .
Vậy với mức ý nghĩa 5%, ta có thể kết luận rằng loại thức ăn mới này làm thay đổi
trọng lượng vật nuôi so với thức ăn cũ. Cụ thể nó làm tăng trọng lượng vì trung
bình mẫu x̄ = 3.62 > 3.3 kg.

d) Ta có thể đặt giả thuyết:


(
H0 : µ = 3.5
H1 : µ 6= 3.5
> t.test(trong.luong, mu = 3.5, alternative = "two.sided", conf.level = 0.95)

One Sample t-test

data: trong.luong
t = 1.1411, df = 14, p-value = 0.273
alternative hypothesis: true mean is not equal to 3.5
95 percent confidence interval:
3.395035 3.843632
sample estimates:
mean of x
3.619333

Kết luận: ta thấy chỉ số p-value= 0.273 > α = 0.05, nên chấp nhận giả thuyết H0 .
Vậy với mức ý nghĩa 5%, ta có thể kết luận rằng trại chăn nuôi báo cáo trọng lượng
trung bình khi xuất chuồng là 3.5 kg/con thì chấp nhận được với mức ý nghĩa 5%.

4.2 Ước lượng và kiểm định giả thuyết cho tham số tỷ lệ của tổng
thể

Trong R về ước lượng và kiểm định cho trung bình được thực hiện chung trong một
hàm prop.test():

t.test(x, n, p = 0, alternative = c("two.sided", "less", "greater"), conf.level


= 0.95, ...)
trong đó,
67
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

• x: là tần số tính chất A nào đó của mẫu cần kiểm định.

• n: cỡ mẫu.

• p: là giá trị tỷ lệ cần kiểm định. Mặc định p=0, đồng nghĩa với giả thuyết H0 : p = 0.

• alternative: đối tượng chọn một trong ba loại sau: two.sided, less, greater.
Mặc định là two.sided (hai phía).

• conf.level: độ tin cậy = 1-α, với α là mức ý nghĩa kiểm định. Mặc định conf.level
= 0.95.

Chú ý: khi thực hiện ước lượng khoảng hai phía, chúng ta có thể bỏ qua đối số p,
alternative, vì chúng không ảnh hưởng tới kết quả ước lượng.
Ví dụ 4.2. Một khu dân cư có 2000 hộ gia đình. Điều tra về nhu cầu tiêu dùng của một
loại hàng hóa, người ta theo dõi 100 gia đình, thấy có 60 gia đình có nhu cầu tiêu dùng
hàng ngày.

a) Với độ tin cậy 95%, hãy ước lượng tỷ lệ hộ và số lượng gia đình trong khu dân cư
có nhu cầu về loại hàng hóa trên.

b) Nếu muốn ước lượng tỷ lệ hộ gia đình trong khu dân cư có nhu cầu về loại hàng
hóa trên với độ tin cậy 99% và sai số không quá 4% thì cần khảo sát bao nhiêu hộ?

c) Nghiên cứu trước đây chỉ ra rằng tỷ lệ hộ gia đình có nhu cầu sử dụng hàng hóa
trên là 58.5%. Hãy kiểm định lại xem hiện nay tỷ lệ này đã thật sự tăng lên hay
không? Kết luận với mức ý nghĩa 5%.

a) > prop.test(x = 60, n = 100, conf.level = 0.95)

1-sample proportions test with continuity correction

data: 60 out of 100, null probability 0.5


X-squared = 3.61, df = 1, p-value = 0.05743
alternative hypothesis: true p is not equal to 0.5
95 percent confidence interval:
0.4970036 0.6952199
sample estimates:

68
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

p
0.6
Kết luận: Với độ tin cậy 95%, khoảng ước lượng tỷ lệ hộ gia đình trong khu dân cư
có nhu cầu tiêu dùng hàng hóa trên dao động từ 49.70% đến 69.52%.

> 2000*0.497
[1] 994
> 2000*0.6952
[1] 1390.4

Tổng số hộ gia đình là 2000 hộ. Vậy số hộ gia đình trong khu dân cư có nhu cầu về
loại hàng hóa trên dao động từ 994 đến 1390 hộ.

b) Từ công thức sai số lề cho tỷ lệ (margin of error):


p
p(1 − p)
m = zα/2 √ ,
n

trong đó, p là xác suất, zα/2 là phân vị đuôi trên mức α/2 của phân phối chuẩn
tắc. Ta suy ra công thức tìm cỡ mẫu:
p !2
p(1 − p)
n= zα/2 .
m

Theo đề bài, độ tin cậy 99%, suy ra mức ý nghĩa α = 1-0.99 = 0.01. Sai số không
quá 0.04 kg, tức là m ≤ 0.04.
Do đó,
p !2
p(1 − p)
n≥ zα/2 .
m

> alpha = 1 - 0.99


> z = qnorm(alpha/2, lower.tail = FALSE)
> m = 0.04
> p = 60/100
> n = (z*sqrt(p*(1-p))/m)^2
> n
[1] 995.2345

69
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Kết luận: Nếu muốn ước lượng tỷ lệ hộ gia đình trong khu dân cư có nhu cầu về
loại hàng hóa trên với độ tin cậy 99% và sai số không quá 4% thì cần khảo sát 996
hộ.

c) Ta có thể đặt giả thuyết như sau:


(
H0 : p = 0.585
H1 : p > 0.585

> prop.test(x = 60, n = 100, p = 0.585, alternative = "greater",


conf.level = 0.95)

1-sample proportions test with continuity correction

data: 60 out of 100, null probability 0.585


X-squared = 0.04119, df = 1, p-value = 0.4196
alternative hypothesis: true p is greater than 0.585
95 percent confidence interval:
0.5127842 1.0000000
sample estimates:
p
0.6

Kết luận: ta thấy chỉ số p-value= 0.4196 > α = 0.05, nên chấp nhận giả thuyết
H0 . Vậy với mức ý nghĩa 5%, ta có thể kết luận rằng tỷ lệ hộ gia đình có nhu cầu
hàng hóa trên chưa thực sự tăng lên.

4.3 Bài tập

Bài tập 4.3.1. Loại cà phê Robusta đạt tiêu chuẩn xuất khẩu nêu tỷ lệ hạt vỡ là 11%.
Trong một lô hàng người ta chọn 36 mẫu. Tỷ lệ hạt vỡ được ghi nhận như sau:

9 10 12 8 10 12 14 9 9 6 11 8 6 7 9 12 11 10
12 14 10 10 7 5 8 7 10 9 12 14 11 10 8 10 8 7

a) Tìm khoảng tin cậy 95% của tỷ lệ hạt vỡ trung bình của lô hàng.

70
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

b) Nếu muốn ước lượng tỷ lệ hạt vỡ trung bình với độ tin cậy 97% và sai số không
quá 0.5 thì cần khảo sát bao nhiêu mẫu cà phê?

c) Lô hàng trên có đạt tiêu chuẩn xuất khẩu hay không? Kết luận với mức ý nghĩa
2.5%.

Bài tập 4.3.2. Một loại nước chấm muốn thâm nhập vào thị trường X thì hàm lượng
chất 3-MCPD không vượt quá 1.5g/kg. Từ một lô hàng của công ty Y, người ta chọn
ngẫu nhiên 16 sản phẩm, kết quả xác định hàm lượng 3-MCPD của mẫu trên như sau:

1.5 1.6 1.6 1.4 1.6 1.5 1.8 1.3 1.4 1.4 1.4 1.6 1.4 1.8 1.3 1.7

a) Ước lượng khoảng tin cậy 95% cho hàm lượng 3-MCPD của lô hàng.

b) Nếu muốn ước lượng hàm lượng 3-MCPD với độ tin cậy 98% và sai số không quá
0.05 thì cần khảo sát bao nhiêu sản phẩm?

c) Lô hàng trên có đạt tiêu chuẩn để nhập vao thị trường X hay không? Kết luận với
mức ý nghĩa 2.5%.

Bài tập 4.3.3. Hội sinh viên của một trường đại học tìm hiểu số giờ tự học của sinh viên
năm thứ I. Số liệu được tổng hợp trong bảng sau:

Số giờ tự học (giờ/tuần) Số sinh viên


Dưới 10 18
10-12 22
12-14 36
14-16 40
16-18 20
Trên 18 10

a) Hãy tìm khoảng tin cậy 90% của số giờ tự học trung bình của sinh viên năm thứ I.

b) Với xác suất tin cậy 95% , hãy ước lượng tỷ lệ sinh viên có số giờ tự học dưới 12
giờ/tuần.

c) Hội sinh viên nhận định số giờ tự học một tuần của sinh viên năm thứ I là 14 giờ.
Với mức ý nghĩa 5%, hãy kết luận về nhận định trên.

71
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Bài tập 4.3.4. Một máy sản xuất tự động với tỷ lệ chính phẩm 98%. Sau một thời gian
hoạt động, người ta nghi ngờ tỷ lệ trên bị giảm. Kiểm tra ngẫu nhiên 500 sản phẩm
thấy có 28 phế phẩm.

a) Với α = 0.05, hãy kiểm tra xem chất lượng của máy có còn được như trước hay
không?

b) Tìm khoảng tin cậy 95% cho tỷ lệ chính phẩm.

c) Nếu muốn ước lượng tỷ lệ chính phẩm với độ tin cậy 99% và sai số không quá 0.02
thì cần khảo sát bao nhiêu sản phẩm?

Bài tập 4.3.5. Theo một nguồn tin thì tỷ lệ hộ dân thích xem dân ca trên TV là 80%.
Thăm dò 36 hộ dân thấy có 25 hộ thích xem dân ca. Với mức ý nghĩa 5%, kiểm định
xem nguồn tin này có đáng tin cậy không?
Bài tập 4.3.6. Tỷ lệ phế phẩm của một nhà máy trước đây là 5%. Năm nay nhà máy áp
dụng một biện pháp kỹ thuật mới. Để nghiên cứu tác dụng của biện pháp kỹ thuật mới
này, người ta lấy ngẫu nhiên gồm 800 sản phẩm để kiểm tra và thấy có 24 phế phẩm.

a) Với α = 1%, hãy kết luận về biện pháp kỹ thuật mới này.

b) Nếu nhà máy báo cáo tỷ lệ phế phẩm sau khi áp dụng biện pháp kỹ thuật mới là
2% thì có chấp nhận được không? Kết luận với α = 1%.

Bài tập 4.3.7. (Doctor Visits). A report by the Gallup Poll stated that on average a
woman visits her physician 5.8 times a year. A researcher randomly selects 20 women
and obtained these data.

3 2 1 3 7 2 9 4 6 6 8 0 5 6 4 2 1 3 4 1

At α = 0.01 can it be concluded that the average is still 5.8 visits per year?
Bài tập 4.3.8. (Television Viewing by Teens). Teens are reported to watch the fewest
total hours of television per week of all the demographic groups. The average television
viewing for teens on Sunday from 1:00 to 7:00 P.M. is 1 hour 13 minutes. A random sam-
ple of local teens disclosed the following times for Sunday afternoon television viewing.
At α = 0.01 can it be concluded that the average is greater than the national viewing
time?

2:30 2:00 1:30 3:20 1:30 1:00 2:15 1:50 2:10 2:30
72
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Source: World Almanac.


Bài tập 4.3.9. (People Who Are Trying to Avoid Trans Fats). A dietitian claims that
60% of people are trying to avoid trans fats in their diets. She randomly selected 200
people and found that 128 people stated that they were trying to avoid trans fats in
their diets. At α = 0.05, is there enough evidence to reject the dietitian’s claim?

Source: Based on a survey by the Gallup Poll.


Bài tập 4.3.10. Một nhà nghiên cứu ước tính rằng chiều cao trung bình của các tòa nhà
cao ốc có từ 30 tầng trở lên trong một thành phố lớn ít nhất là 700 feet. Một mẫu ngẫu
nhiên gồm 10 tòa nhà có từ 30 tầng trở lên được chọn, và chiều cao của chúng như sau:

485 511 841 725 615 520 535 635 616 582

a) Tìm khoảng ước lượng chiều cao trung bình của các tòa nhà cao ốc có từ 30 tầng
trở lên với độ tin cậy 97.5%.

b) Với mức ý nghĩa 2.5%, ta có thể kết luận rằng báo cáo của nhà nghiên cứu là đúng
hay không?

Bài tập 4.3.11. Một báo cáo nói rằng 50.3% người dân Mỹ có sở hữu cổ phiếu. Một mẫu
ngẫu nhiên gồm 300 chủ hộ thì có 171 người trả lời rằng họ có sở hữu một số cổ phiếu.

a) Với mức ý nghĩa 5%, ta có thể cho rằng tỷ lệ người dân Mỹ có sở hữu cổ phiếu
khác so với báo cáo ở trên hay không?

b) Khoảng ước lượng 95% cho tỷ lệ người Mỹ có sở hữu cổ phiếu là bao nhiêu?

Bài tập 4.3.12. Thống kê doanh số bán của một siêu thị sau một tháng đẩy mạnh chiến
dịch khuyến mãi, số liệu cho trong bảng dưới đây:

73
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

Doanh số bán Số ngày


(triệu đồng/ngày)
Dưới 200 18
200-250 22
250-300 20
300-350 25
350-400 50
400-450 40
450-500 15
Trên 500 10

a) Những ngày có doanh số bán từ 400 triệu đồng trở lên là những ngày bán đắt hàng.
Hãy ước lượng tỷ lệ những ngày bán đắt hàng ở siêu thị này với độ tin cậy 90%.

b) Tìm khoảng tin cậy 95% của doanh số bán trung bình một ngày bán hàng.

c) Doanh số trung bình mỗi ngày của siêu thị trước đây là 350 triệu đồng. Từ số liệu
trên có thể nói rằng chiến dịch khuyến mãi đã làm thay đổi doanh số bán không?
Kết luận với mức ý nghĩa 5%

Bài tập 4.3.13. Các nhà nghiên cứu tiến hành đo lường hàm lượng vitamin D của một
số bệnh nhân nữ bị u xơ thần kinh (đơn vị ng/mL) và số liệu ghi nhận như sau:

14.1 15.1 15.1 15.8 15.8 15.8 17.0 17.0 17.0 17.0 18.2 19.1

a) Ước lượng khoảng trung bình hàm lượng vitamin D của nhóm bệnh nhân trên với
độ tin cậy 95% và độ tin cậy 99%.

b) Theo quy định thì một người nữ giới được gọi là có đủ hàm lượng vitamin D nếu
trung bình đạt 20 ng/mL. Kiểm định xem hàm lượng vitamin D của nhóm bệnh
nhân nữ trên có đạt mức tiêu chuẩn hay không? Kết luận với mức ý nghĩa 5%.

Bài tập 4.3.14. Một nhóm các nhà khoa học tiến hành nghiên cứu sự nhạy cảm của
100 sợ noron thần kinh pro-opiomelanocortin (POMC) đối với glucose trên con chuột
và phát hiện có 58 sợ noron thật sự nhạy cảm với glucose.

a) Ước lượng tỷ lệ sợ noron thần kinh PMOC nhạy cảm với glucose với độ tin cậy
95%.
74
TH THỐNG KÊ KHOA HỌC SỰ SỐNG

b) Một loạt các nghiên cứu trước đó chỉ ra rằng tỷ lệ thần kinh POMC nhạy cảm với
glucose là 62%. Kiểm định lại xem các nghiên cứu trước đó có chính xác không?
Kết luận với mức ý nghĩa 5%.

c) Nếu muốn ước lượng với độ tin cậy 99% và sai số không quá 5% thì các nhà nghiên
cứu phải khảo sát tối thiểu bao nhiêu sợi noron thần kinh POMC?

Bài tập 4.3.15. Đo đường kính (đơn vị: mm) của 20 chi tiết do một máy tiện sản xuất,
ta được bảng số liệu sau:

Đường kính 247 248 249 250 251 252 253 256 257 258 260
Số chi tiết 2 2 3 5 1 1 2 1 1 1 1

Cho rằng đường kính có phân phối chuẩn.

a) Tìm khoảng ước lượng độ dài trung bình của đường kính chi tiết máy với mức ý
nghĩa 0,05.

b) Các chi tiết có đường kính từ 249 mm đến 251 mm được coi là sản phẩm loại A.
Với độ tin cậy 95%, tìm khoảng ước lượng của tỷ lệ sản phẩm loại A do máy đó
sản xuất.

75

You might also like