Professional Documents
Culture Documents
MA231-Bài tập-Noi-Dung-Giang-Day-Theo-Tuan
MA231-Bài tập-Noi-Dung-Giang-Day-Theo-Tuan
Tuần 1:
- Nội dung 1: Tải, cài đặt R và R Studio
- Nội dung 2: Làm quen với giao diện R Studio: https://youtu.be/-2XW5OAEz6w
- Nội dung 3: Nhập dữ liệu trực tiếp: Hàm c(); Hàm scan(); Hàm data.frame() ghép các
vector thành data
https://youtu.be/6zBAIH01KdQ
Bài tập:
1. Nhập vào R dãy số sau: 3, - 3, 7, 9, 15, 21, -5.
2. Nhập vào R biến KhuVuc như sau: Bac, Trung, Bac, Nam, Trung, Nam, Bac
3. Scan dãy số sau vào R: 2 3 6 2 -1 7 5 90 21 32 57 24
- Nội dung 4: Nhập dữ liệu từ File: Đổi thư mục, Đọc các loại file txt, csv, rda, xls; Hàm
getwd(); Hàm save() lưu dữ liệu.
https://youtu.be/UkpM8NS3Gxk
Chú ý: Nói thêm về cách tìm tên dữ liệu trên R khi lấy dữ liệu từ file rda.
Nói thêm về cách lấy dữ liệu bằng cách trỏ trực tiếp vào tên dữ liệu
Nói thêm về cách xem trước dữ liệu có sự khác nhau giữa data và véc tơ
Nói thêm về lấy lại các lệnh đã nhập phía trước
Chú ý:
- Trong R ta không sửa lại được các lệnh đã gõ, nhưng có thể lấy lại những lệnh đó để
chỉnh sửa rồi chạy lại. Ta dùng phím mũi tên ↑ hoặc ↓ trên bàn phím để lấy lại các lệnh
đã gõ phía trước (mỗi lần nhấn phím này sẽ duyệt lại lần lượt lệnh phía trên hoặc lệnh
phía dưới, có thể nhấn nhiều lần), chỉnh sửa lệnh rồi nhấn Enter để chạy lại lệnh.
- Trong cửa sổ Environment (cửa sổ thứ 4) có hiển thị tên các dữ liệu hiện có trong R. Dữ
liệu chia làm 2 loại: Values liệt kê các véc tơ dữ liệu (một biến hay chính là một dãy số
liệu); Data liệt kê các bảng dữ liệu (một bảng có nhiều dòng và nhiều cột). Chú ý ta có
thể bấm vào tên data để xem trước dữ liệu, còn đối với dữ liệu véc tơ (ở mục Values) thì
không thể xem trước giống như thế. Muốn xem dữ liệu ta gõ tên dữ liệu vào cửa số
Console (cửa số thứ 2) rồi Enter để hiển thị dữ liệu.
- Trong trường hợp tên file rda không trùng với tên của dữ liệu trong R, ta không biết dữ
liệu mới lấy vào là dữ liệu nào, cũng không muốn xóa các file dữ liệu đang có, thì ta làm
như sau để tìm tên dữ liệu:
+ Lấy file rda vào R như bình thường, khi đó cửa sổ gõ lệnh sẽ tự động xuất hiện
lệnh như sau
> load("C:/BoMonToan/XacSuatThongKe/DuLieuThucHanh_XSTK/HocSinh.rda")
+ Nhấn phím mũi tên (↑) trên bàn phím để lấy lại lệnh load dữ liệu ở trên, sau đó đặt
tên cho lệnh này, chẳng hạn đặt tên lệnh này là a như bên dưới, sau đó gõ phím
Enter
>a = load("C:/BoMonToan/XacSuatThongKe/DuLieuThucHanh_XSTK/HocSinh.rda")
+ Gõ a rồi nhấn phím Enter ta được kết quả như sau:
>a
[1] "DL"
Như vậy tên file rda là HocSinh.rda, còn tên dữ liệu trong R là DL. Các em gõ DL rồi Enter sẽ
ra dữ liệu, còn nếu gõ HocSinh rồi Enter sẽ bị báo lỗi “not found”.
- Đối với các loại file xls, xlsx, csv (file txt không được) ta còn một cách Import tiện lợi
hơn, đó là trong cửa sổ Files (cửa sổ thứ 3), ta bấm trực tiếp vào tên file. Chẳng hạn khi
bấm vào file HamLuongAlbumin.xls sẽ xuất hiện các lựa chọn như sau
Ở chỗ File name ta không cần chỉnh sửa, còn ở chỗ Save as type ta chọn vào CSV UTF-8
(Comma delimited) rồi bấm Save để lưu lại.
● Lấy file csv vừa tạo ra và R là xong.
Nội dung 6: Chỉnh sửa véc tơ, tạo dãy số bằng hàm seq và rep: Sửa dữ liệu vector dùng [],
Thêm dữ liệu vào vector dùng hàm c(), Loại số liệu trống dùng na.omit(), Hàm mean(), Cộng
trừ nhân chia, lũy thừa, logarit, Phép tính giữa các vector số, Dùng “:” tạo dãy số, Dùng seq()
tạo dãy cách đều, Dùng rep() tạo dãy có nhiều giá trị lặp lại. https://youtu.be/cuGkIhLX8XA
Bài tập: Tạo dãy số:
-3, -2, -1, 0 , 1, 2
1, 5, 9, 13, …., 1001
1212121212
11112222333344445555
Tạo dãy kí tự
AAABBBBDDDDD
Tính tổng: (dùng hàm sum() để tính tổng)
1*2 + 2*3 + 3*4 + … + 99*100
12 + 32 + 52 + … + 992
- Nội dung 7: Truy cập vào các cột của một data.frame, dùng hàm attach() hoặc dùng $:
https://www.youtube.com/watch?v=qUa7uBPlCyc
thì tức là trong bảng dữ liệu DL có 2 cột là GioiTinh và Tuoi bị trùng tên với 2 véc tơ dữ liệu
trong R (phần Values ở cửa sổ thứ 4)
Khi đó ta không thể lấy ra 2 cột GioiTinh, Tuoi của bảng DL nếu chỉ gõ GioiTinh hoặc Tuoi rồi
Enter. Ta có 2 cách xử lý việc này như sau:
Cách 1: Dùng $, chẳng hạn gõ DL$Tuoi rồi Enter để lấy ra cột Tuoi của bảng DL
Cách 2: Xóa 2 véc tơ bị trùng tên trong phần Values đi bằng lệnh sau:
> rm(GioiTinh,Tuoi) hoặc > remove(GioiTinh,Tuoi)
Hai lệnh này chỉ xóa các véc tơ bị trùng tên chứ không xóa hết dữ liệu như khi ta bấm vào hình
chiếc chổi trong cửa sổ thứ 4.
- Nội dung 8: Lọc dữ liệu vector, data frame, dùng subset():
https://youtu.be/z_9TlPhk2mM
Bài tập: Lấy tập dữ liệu ChiSoIQ_CLBToanHoc.csv vào R.
a. Lọc ra tập dữ liệu mới gồm các sinh viên nam
b. Lọc ra tập dữ liệu mới gồm các sinh viên nam và có chỉ số IQ trên 120
c. Lọc ra một véc tơ chứa chỉ số IQ của các sinh viên thông minh (cột TriTue). Tính chỉ số
IQ trung bình của các sinh viên thông minh.
===================================================================
TUẦN 2:
- Nội dung 1: Dùng hàm sum() đếm số quan sát thỏa mãn điều kiện, Dùng [,] lọc dữ
liệu từ data.frame theo chỉ số dòng, Lệnh dim() và lệnh head():
https://youtu.be/ITK6t3-dqfA
Bài 1: Dùng tập dữ liệu DiemToanKhoiA_2008.rda hãy đếm xem có bao nhiêu thí sinh có
điểm thi thuộc khoảng (4,6)
Bài 2: Dùng tập dữ liệu ChiSoIQ_CLBToanHoc.csv hãy lọc ra một tập dữ liệu mới gồm các
quan sát ở vị trí lẻ.
- Nội dung 2: Bảng tần số một chiều: Hàm table(), prop.table(), cumsum(), phân tổ dữ
liệu bằng hàm cut(): https://youtu.be/SPVOykN5ihk
Bài 1: Dùng tập dữ liệu DieuTraDienThoai.xls hãy thực hiện phân tổ đều dữ liệu tiền
điện thoại thành 5 tổ.
Bài 2: Dùng tập dữ liệu ChiSoIQ_CLBToanHoc.csv hãy thực hiện phân tổ đều cho chỉ số
IQ với khoảng cách là 10 và điểm chia đầu tiên là 90, các tổ có dạng [,). Sau đó trả lời
các câu hỏi sau:
a. Tính tỉ lệ SV có chỉ số IQ thuộc khoảng [100,110)
b. Tỉ lệ SV có chỉ số IQ nhỏ hơn 120.
c. Tỉ lệ SV có chỉ số IQ ít nhất là 110.
d. Số sinh viên có chỉ số IQ nhỏ hơn 110.
1. Nói thêm về tham số right
2. Nói thêm về phân tổ không đều thì tham số break nhập thế nào
Ví dụ: Phân tổ DiemToanKhoiA_2008.rda với các tổ là <=3, (3,4], (4,5], >5
3. Nói thêm về trường hợp cách lấy đầu mút không thống nhất
Ví dụ: Phân tổ DiemToanKhoiA_2008.rda với các tổ là <3, [3, 5], >5
Một số chú ý đối với nội dung phân tổ:
+) Phân tổ đều
để khai báo cho tham số break ta dùng dùng hàm seq
+) Phân tổ không đều
- Các tổ cùng có dạng [,) hoặc cùng có dạng (,] => Dùng hàm cut, tham số break phải tự
nhập
Ví dụ 1: Phân tổ cho ChiSoIQ (file ChiSoIQ.rda) với các tổ là: <100, [100,130),
[130,135), >=135
Ở VD này, các điểm chia là: 56, 100, 130, 135, 136 => Lệnh như sau:
pt1=cut(ChiSoIQ,breaks = c(56,100,130,135,136),right = F,include.lowest = F)
- Trong t/h các tổ không cùng dạng => Không dùng được hàm cut nữa
VD2: Phân tổ cho ChiSoIQ (file ChiSoIQ.rda) với các tổ là: <100, [100,300], >300
=> Các tổ phải là: [56,100), [100,130], (130,136] (nhớ rằng min = 56, max = 136)
Khi đó ta phải dùng lệnh như sau:
pt2 = c() # tạo ra một véc tơ rỗng
pt2[ChiSoIQ<100]=1 # Ở những chỗ nào chỉ số IQ < 100 thì pt2 nhận giá trị 1
pt2[ChiSoIQ>=100&ChiSoIQ<=130]=2 # tương tự
pt2[ChiSoIQ>130]=3 # tương tự
table(pt2) # tính tần số sau khi phân tổ
Bài 1:
a. Phân tổ dữ liệu tuổi trong dữ liệu SoLieu.csv thành các tổ: tổ 1: tuổi ít hơn 30, tổ 2: tuổi
trong khoảng [30, 40), tổ 3: tuổi trong khoảng [40, 50), tổ 4: tuổi lớn hơn hoặc bằng 50.
b. Tính tần số của tổ 3
c. Tính tần suất tích lũy của tổ 2.
Bài 2: Phân tổ Thu nhập trong dữ liệu SoLieu.csv thành các tổ: <=60, (60, 80), >=80 và tính tần
số của mỗi tổ.
- Nội dung 3: Bảng tần số chéo: Hàm table(,); prop.table() với tham số margin:
https://youtu.be/0RFPWlkzWpQ
Bài 3: (tiếp theo bài 2 của Nội dung 2 ChiSoIQ_CLBToanHoc.csv)
- Tính số sinh viên nữ rất thông minh
- Tính tỉ lệ sinh viên thông minh trong nhóm các sinh viên nữ
- Tính tỉ lệ nam trong nhóm các sinh viên thông minh
- Tính tỉ lệ sinh viên nam trong nhóm sinh viên có chỉ số IQ thuộc khoảng [100, 110)
- Tỉnh tỉ lệ sinh viên có chỉ số IQ thuộc khoảng [100, 110) trong nhóm các sinh viên nữ.
TUẦN 3:
- Nội dung 1: Biểu đồ thanh, biểu đồ tròn (dữ liệu thứ cấp và dữ liệu sơ cấp) (Dữ liệu
DieuTraDienThoai.xls):
https://youtu.be/jRSAPssdsKA
Bài tập 1: Dùng dữ liệu SoLieu.csv hãy vẽ biểu đồ thanh cho biến Giới tính và biểu đồ tròn cho
biến Khu vực.
Bài tập 2:
Vẽ biểu đồ thanh và biểu đồ tròn cho bảng sau về xếp loại điểm thi môn XSTK học kì vừa qua:
Xếp loại Xuất sắc Giỏi Khá Trung bình
Số sinh viên 15 74 128 69
- Nội dung 2: Biểu đồ phân phối tần số Histogram và Đa giác tần số (Dữ liệu
DieuTraDienThoai.xls):: https://youtu.be/Er1MKOZvD8A
Bài tập 3: Vẽ biểu đồ phân phối tần số và đa giác tần số cho dữ liệu Chỉ số IQ (dữ liệu
ChiSoIQ.rda) với độ rộng các cột là 10. Nhận xét về hình dáng, phân phối của dữ liệu.
- Nội dung 3: Biểu đồ thân và lá: https://youtu.be/n4IFGv5xJD8
Bài tập 4: Vẽ biểu thân và lá cho biến Tuổi của tệp dữ liệu SoLieu.csv. Nhận xét về hình dáng
phân phối của dữ liệu Tuổi.
- Nội dung 4: Các đại lượng thống kê mô tả (cả t/h phải lọc dữ liệu) (dữ liệu điểm toán
khối D): https://youtu.be/sFT2-YeVeJA
Bài tập 5: Dùng tập dữ liệu DieuTraDienThoai.xls hãy thực hiện các yêu cầu sau:
a. Tính các số đo hướng tâm: trung bình cộng, trung vị, mode của tiền điện thoại. Nêu ý
nghĩa của trung vị.
b. Tính các số đo phân tán: khoảng biến thiên, độ trải giữa, phương sai, độ lệch chuẩn của
tiền điện thoại.
c. Tính các số đo phân bố: Tứ phân vị, phân vị thứ 90. Nêu ý nghĩa của tứ phân vị thứ nhất
và của phân vị thứ 90.
d. Tính các đại lượng thống kê mô tả cho tiền điện thoại của các thuê bao ở miền Bắc.
- Nội dung 5: Biểu đồ hộp và râu: https://youtu.be/o63tGpVaL0k
Bài tập 6: Vẽ và nhận xét biểu đồ hộp và râu cho tiền điện thoại.
—-------------------------------------------------------------------------------------------------------------
TUẦN 4:
- Xác suất tính bằng định nghĩa
- Biến cố độc lập
- Xác suất tính bằng các công thức xác suất
TUẦN 5:
- Nội dung 1: Khái niệm Bảng PPXS: https://youtu.be/L0ur_mLIMnQ
- Nội dung 2: Tính Kì vọng, Phương sai từ Bảng PPXS: https://youtu.be/TJ4cLrXcIB0
Bài tập:
X -3 -1 1 3
P(x) 0.3 0.4 0.1
TUẦN 7:
- Video 1: KĐ 2 TB, mẫu độc lập, phương sai khác nhau: https://youtu.be/hBnEYfYU5Rg
Bài 1: Dùng tập dữ liệu ChiSoIQ_CLBToanHoc.csv hãy kiểm định giả thuyết chỉ số IQ trung
bình của nam và nữ là như nhau. Dùng mức ý nghĩa 5%.
Bài 2: Dùng tập dữ liệu SoLieu.csv hãy kiểm định giả thuyết thu nhập của người dân ở Nông
thôn cao hơn của người dân ở Hải đảo. Dùng mức ý nghĩa 1%. Giả thiết rằng thu nhập của
người dân ở nông thôn và hải đảo tuân theo phân phối chuẩn và có cùng phương sai.
- Video 2: Kiểm định 2 TB, mẫu theo cặp: https://youtu.be/QQ1eMZ5Tpbw
Bài 3: Mười bệnh nhân bị huyết áp cao được cho dùng thử chất Timolol, một loại chất được cho
là sẽ làm giảm huyết áp. Huyết áp tối đa của họ trước và sau khi dùng thử chất này hai tuần đo
được như sau:
Trước 172 186 170 205 174 184 178 156 190 168
Sau 159 157 163 207 164 141 182 171 177 138
Tại mức ý nghĩa 1% có thể kết luận chất Timolol làm giảm huyết áp ở những người cao huyết
áp hay không? Giả thiết hai tổng thể huyết áp trước và sau khi dùng thuốc tuân theo phân phối
chuẩn.
- Video 3: Kiểm định 2 Tỉ lệ: https://youtu.be/htIk4201q7Y
Bài 1: Hỏi ngẫu nhiên 100 SV nữ thì có 20 bạn cho biết thường xuyên đi học muộn, còn trong
số 120 sinh viên nam thì 30 bạn cho biết thường xuyên đi học muộn. Kiểm định xem tỉ lệ đi học
muộn của SV nam có cao hơn tỉ lệ này của các SV nữ hay không? Dùng mức ý nghĩa 1%.
Bài 2: Dùng tập dữ liệu ChiSoIQ_CLBToanHoc.csv hãy kiểm định giả thuyết tỉ lệ SV thông
minh trong nhóm SV nam cao hơn tỉ lệ này trong nhóm SV nữ (TriTue= ThongMinh). Dùng
mức ý nghĩa 5%.
- Video 4: Kiểm định 2 PS: https://youtu.be/F673JTn8RNI
Bài 1: Dùng tập dữ liệu ChiSoIQ_CLBToanHoc.csv hãy kiểm định giả thuyết phương sai của
chỉ số IQ của nam và nữ là bằng nhau. Dùng mức ý nghĩa 10%.
Tuần 8:
- Video 1: PTPS (nhập dữ liệu trực tiếp) : https://youtu.be/HNfGy5yn7e0
- Video 2: PT sâu (nhập dữ liệu trực tiếp): https://youtu.be/lqJL_OtsO1s
Bài tập: Bài 101, 102 trong file Chương 9 (Bài bóng Golf)
- Video 3: PTPS (dữ liệu dạng data.frame cho trước)
Ví dụ: Dùng dữ liệu SoLieu.csv hãy kiểm định giả thuyết: Thu nhập trung bình của người dân ở
cac khu vực khác nhau là bằng nhau. Dùng mức ý nghĩa 5%. Giả thiết các tổng thể tuân theo
phân phối chuẩn và có phương sai bằng nhau.
Giải: Trước tiên ta phải xem có tất cả bao nhiêu tổng thể. Ta lấy dữ liệu SoLieu.csv vào R và
dùng lệnh
Ta thấy có tất cả 4 khu vực. Vậy ta đặt bài toán như sau:
Giải: Gọi m1, m2, m3, m4 lần lượt là thu nhập trung bình của người dân ở các khu vực Hải đảo,
Miền núi, Nông thôn, Thành phố
H0: m1 = m2 = m3 = m4
H1: Tồn tại i, j, 0≤i,j≤4, i ≠ j sao cho mi ≠ mj
Trong tập dữ liệu SoLieu đã có sẵn mẫu gộp của 4 mẫu, đó chính là cột ThuNhap. Ta cũng có
luôn vector phân nhóm, đó chính là cột KhuVuc. Vậy ta tìm p-giá trị như sau:
Vậy p-gt = 0.2883 > 0.05 => Không bác bỏ H0 => Thu nhập trung bình của người dân ở các
khu vực khác nhau là như nhau.
Bài tập 1: Bài 95 trong file BaiTapXSTK.pdf
Bài tập 2:
Chơi thể thao Thường xuyên Khá thường xuyên Không thường xuyên
Giới tính
Nam 40 65 15
Nữ 25 35 30
Ở mức ý nghĩa 5% hãy kiểm định xem có mối liên hệ giữa giới tính và mức độ thường xuyên
chơi thể thao hay không?
Bài 2. Dùng tập dữ liệu HocSinh.rda hãy kiểm định xem có mối liên hệ giữa Giới tính và Xếp
loại học lực (cột HocLuc) không? Dùng mức ý nghĩa 1%
Video 2: Kiểm định mức phù hợp (tỉ lệ cho trước, phân phối nhị thức):
https://youtu.be/up9aSsIYpZU
Bài 1: Theo thống kê từ Bộ môn, tỉ lệ sinh viên thi đỗ, thi trượt và bỏ thi môn XSTK trong thời
kì học trực tiếp là 65%; 25% và 10%. Trong đợt thi online vừa qua, khảo sát trong số 100 sinh
viên chọn ngẫu nhiên thì thấy có 85 sinh viên thi đỗ, 10 sinh viên thi trượt và 5 sinh viên bỏ thi.
Ở mức ý nghĩa 5% kiểm định xem kết quả đợt thi online vừa qua có còn tuân theo tỉ lệ của các
kì thi trực tiếp trước kia không?
Bài 2: Xét phép thử tung đồng thời 3 quân xúc xắc. Thực hiện phép thử này 100 lần và đếm số
quân xúc xắc được mặt 6 chấm trong mỗi lần tung, ta được kết quả như sau:
Số quân xx được 0 1 2 3
6 chấm
Số lần thử 55 34 7 4
Ở mức ý nghĩa 5% có thể kết luận rằng số quân xx được 6 chấm trong mỗi lần tung tuân theo
phân phối nhị thức với p = 1/6 hay không?
Bài 3 (Bỏ - không học Poisson nữa rồi): Theo dõi 100 ngày ngẫu nhiên thì thấy số vụ va chạm
giao thông xảy ra ở một ngã tư như sau:
Số vụ va chạm trong ngày 0 1 2 3 Từ 4 vụ trở lên
Số ngày 42 31 15 8 4
Ở mức ý nghĩa 5% có thể cho rằng số vụ va chạm giao thông trong một ngày tại địa phương đó
tuân theo phân phối phân phối Poisson với λ = 1 hay không?