#———————–Việc 3. Đọc dữ liệu “birthwt.csv” vào R và gọi dữ liệu là “bw”
file.choose()
## [1] "D:\\HOC TAP\\TAP HUAN UNG DUNG AI TRONG PT DU LIEU SU DUNG R\\THUC HANH TAI LOP\\hocR1_5\\bw.Rmd"
bw = read.csv("D:\\HOC TAP\\TAP HUAN UNG DUNG AI TRONG PT DU LIEU SU DUNG R\\thuc hanh\\birthwt.csv")
head(bw)
## id low age lwt race smoke ptl ht ui ftv bwt
## 1 85 0 19 182 2 0 0 0 1 0 2523
## 2 86 0 33 155 3 0 0 0 0 3 2551
## 3 87 0 20 105 1 1 0 0 0 1 2557
## 4 88 0 21 108 1 1 0 0 1 2 2594
## 5 89 0 18 107 1 1 0 0 1 0 2600
## 6 91 0 21 124 3 0 0 0 0 0 2622
#—Việc 4. Thông tin về dữ liệu bw này #4.1 Có bao nhiêu biến số (variable) và quan sát (observation)
dim(bw)
## [1] 189 11
#Việc 5. Biên tập dữ liệu #5.1 Tạo biến số mới mwt là cân nặng của mẹ tính bằng kg
#PROMPT: Tạo biến số mới mwt là cân nặng của mẹ tính bằng kg từ biến số lwt tính bằng pound
bw$mwt = bw$lwt *0.453592
head(bw)
## id low age lwt race smoke ptl ht ui ftv bwt mwt
## 1 85 0 19 182 2 0 0 0 1 0 2523 82.55374
## 2 86 0 33 155 3 0 0 0 0 3 2551 70.30676
## 3 87 0 20 105 1 1 0 0 0 1 2557 47.62716
## 4 88 0 21 108 1 1 0 0 1 2 2594 48.98794
## 5 89 0 18 107 1 1 0 0 1 0 2600 48.53434
## 6 91 0 21 124 3 0 0 0 0 0 2622 56.24541
#5.2 Tạo biến số mới ethnicity là biến factor với điều kiện sau:
bw$ethnicity <- factor(bw$race,
levels = c(1, 2, 3),
labels = c("White","Black", "Other"))
head(bw)
## id low age lwt race smoke ptl ht ui ftv bwt mwt ethnicity
## 1 85 0 19 182 2 0 0 0 1 0 2523 82.55374 Black
## 2 86 0 33 155 3 0 0 0 0 3 2551 70.30676 Other
## 3 87 0 20 105 1 1 0 0 0 1 2557 47.62716 White
## 4 88 0 21 108 1 1 0 0 1 2 2594 48.98794 White
## 5 89 0 18 107 1 1 0 0 1 0 2600 48.53434 White
## 6 91 0 21 124 3 0 0 0 0 0 2622 56.24541 Other
#Tạo 1 tập dữ liệu bw1 chỉ gồm 3 biến số id, low và bwt.
bw1 = bw[, c("id", "low", "bwt")]
dim(bw1)
## [1] 189 3
head(bw1)
## id low bwt
## 1 85 0 2523
## 2 86 0 2551
## 3 87 0 2557
## 4 88 0 2594
## 5 89 0 2600
## 6 91 0 2622
#tạo 1 tập dữ liệu bw2 chỉ gồm những thai phụ có cân nặng thấp (low = 1). Dữ liệu này có bao nhiêu biến số và quan sát
bw2=subset(bw,low==1)
head(bw2)
## id low age lwt race smoke ptl ht ui ftv bwt mwt ethnicity
## 131 4 1 28 120 3 1 1 0 1 0 709 54.43104 Other
## 132 10 1 29 130 1 0 0 0 1 2 1021 58.96696 White
## 133 11 1 34 187 2 1 0 1 0 0 1135 84.82170 Black
## 134 13 1 25 105 3 0 1 1 0 0 1330 47.62716 Other
## 135 15 1 25 85 3 0 0 0 1 0 1474 38.55532 Other
## 136 16 1 27 150 3 0 0 0 0 0 1588 68.03880 Other
dim(bw2)
## [1] 59 13
#Tạo 1 tập dữ liệu bw3 chỉ gồm những thai phụ có cân nặng thấp (low = 1) và có hút thuốc trong lúc mang thai (smoke = 1). Dữ liệu này có bao nhiêu biến số và quan sát?
bw3=subset(bw, low==1 & smoke==1)
head(bw3)
## id low age lwt race smoke ptl ht ui ftv bwt mwt ethnicity
## 131 4 1 28 120 3 1 1 0 1 0 709 54.43104 Other
## 133 11 1 34 187 2 1 0 1 0 0 1135 84.82170 Black
## 140 20 1 21 165 1 1 0 1 0 1 1790 74.84268 White
## 141 22 1 32 105 1 1 0 0 0 0 1818 47.62716 White
## 142 23 1 19 91 1 1 2 0 1 0 1885 41.27687 White
## 145 26 1 25 92 1 1 0 0 0 0 1928 41.73046 White
dim(bw3)
## [1] 30 13
#Việc 6. Phân tích mô tả-6.1 Mô tả đặc điểm tuổi mẹ, cân nặng mẹ và cân nặng con
library(table1)
## Warning: package 'table1' was built under R version 4.4.3
##
## Attaching package: 'table1'
## The following objects are masked from 'package:base':
##
## units, units<-
table1(~ age+bwt+lwt, data=bw)
| Overall (N=189) |
|
|---|---|
| age | |
| Mean (SD) | 23.2 (5.30) |
| Median [Min, Max] | 23.0 [14.0, 45.0] |
| bwt | |
| Mean (SD) | 2940 (729) |
| Median [Min, Max] | 2980 [709, 4990] |
| lwt | |
| Mean (SD) | 130 (30.6) |
| Median [Min, Max] | 121 [80.0, 250] |
#6.2 Mô tả đặc điểm tuổi mẹ, cân nặng mẹ, tình trạng hút thuốc trong thai kỳ, chủng tộc và cân nặng con theo tình trạng trẻ sanh thiếu cân
# Chuyển thành biến factor
bw$low <- factor(bw$low, levels = c(0, 1), labels = c("Normal weight", "Low birth weight"))
bw$smoke <- factor(bw$smoke, levels = c(0, 1), labels = c("Non-smoker", "Smoker"))
bw$race <- factor(bw$race, levels = c(1, 2, 3), labels = c("White", "Black", "Other"))
table1(~ age + lwt + smoke + race + bwt | low, data = bw)
| Normal weight (N=130) |
Low birth weight (N=59) |
Overall (N=189) |
|
|---|---|---|---|
| age | |||
| Mean (SD) | 23.7 (5.58) | 22.3 (4.51) | 23.2 (5.30) |
| Median [Min, Max] | 23.0 [14.0, 45.0] | 22.0 [14.0, 34.0] | 23.0 [14.0, 45.0] |
| lwt | |||
| Mean (SD) | 133 (31.7) | 122 (26.6) | 130 (30.6) |
| Median [Min, Max] | 124 [85.0, 250] | 120 [80.0, 200] | 121 [80.0, 250] |
| smoke | |||
| Non-smoker | 86 (66.2%) | 29 (49.2%) | 115 (60.8%) |
| Smoker | 44 (33.8%) | 30 (50.8%) | 74 (39.2%) |
| race | |||
| White | 73 (56.2%) | 23 (39.0%) | 96 (50.8%) |
| Black | 15 (11.5%) | 11 (18.6%) | 26 (13.8%) |
| Other | 42 (32.3%) | 25 (42.4%) | 67 (35.4%) |
| bwt | |||
| Mean (SD) | 3330 (478) | 2100 (391) | 2940 (729) |
| Median [Min, Max] | 3270 [2520, 4990] | 2210 [709, 2500] | 2980 [709, 4990] |