# Việc 1
# Việc 2
# Việc 3
## Tìm kiếm file dữ liệu cần thực hiện
file.choose()
## [1] "D:\\TAP HUAN R DAU\\Obesity data.csv"
## Đọc dữ liệu "Obesity data.csv" vào R và gọi dữ liệu là "ob"
ob = read.csv("D:\\TAP HUAN R DAU\\Obesity data.csv")
# Việc 4
## Có bao nhiêu biến số (variable) và quan sát (observation)
dim(ob)
## [1] 1217 13
## Liệt kê 6 quan sát đầu tiên của dữ liệu
head(ob)
## id gender height weight bmi age WBBMC wbbmd fat lean pcfat hypertension
## 1 1 F 150 49 21.8 53 1312 0.88 17802 28600 37.3 0
## 2 2 M 165 52 19.1 65 1309 0.84 8381 40229 16.8 1
## 3 3 F 157 57 23.1 64 1230 0.84 19221 36057 34.0 1
## 4 4 F 156 53 21.8 56 1171 0.80 17472 33094 33.8 1
## 5 5 M 160 51 19.9 54 1681 0.98 7336 40621 14.8 0
## 6 6 F 153 47 20.1 52 1358 0.91 14904 30068 32.2 1
## diabetes
## 1 1
## 2 0
## 3 0
## 4 0
## 5 0
## 6 0
## Liệt kê 6 quan sát cuối cùng của dữ liệu
tail(ob)
## id gender height weight bmi age WBBMC wbbmd fat lean pcfat
## 1212 1222 F 153 50 21.4 59 1309 0.87 18328 29147 37.6
## 1213 1223 F 150 44 19.6 44 1474 0.95 12906 28534 30.1
## 1214 1224 F 148 51 23.3 58 1522 0.97 14938 33931 29.6
## 1215 1225 F 149 50 22.5 57 1409 0.93 16777 30598 34.4
## 1216 1226 F 144 49 23.6 67 1266 0.90 20094 27272 41.3
## 1217 1227 F 141 45 22.6 58 1228 0.91 14567 28111 33.2
## hypertension diabetes
## 1212 1 0
## 1213 0 1
## 1214 0 0
## 1215 1 0
## 1216 1 0
## 1217 0 0
## Tóm tắt dữ liệu bằng hàm summary
summary(ob$fat)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 4277 13768 16955 17288 20325 40825
library(psych)
describe(ob)
## vars n mean sd median trimmed mad min
## id 1 1217 614.52 354.47 615.00 614.61 453.68 1.00
## gender* 2 1217 1.29 0.45 1.00 1.24 0.00 1.00
## height 3 1217 156.72 7.98 155.00 156.36 7.41 136.00
## weight 4 1217 55.14 9.40 54.00 54.62 8.90 34.00
## bmi 5 1217 22.40 3.06 22.20 22.28 2.97 14.50
## age 6 1217 47.15 17.28 48.00 47.00 17.79 13.00
## WBBMC 7 1217 1724.91 363.35 1707.00 1714.90 343.96 695.00
## wbbmd 8 1217 1.01 0.11 1.01 1.01 0.12 0.65
## fat 9 1217 17288.44 5214.40 16955.00 17133.02 4857.00 4277.00
## lean 10 1217 35463.11 7027.55 33577.00 34743.11 6004.53 19136.00
## pcfat 11 1217 31.60 7.18 32.40 31.99 7.12 9.20
## hypertension 12 1217 0.51 0.50 1.00 0.51 0.00 0.00
## diabetes 13 1217 0.11 0.31 0.00 0.01 0.00 0.00
## max range skew kurtosis se
## id 1227.00 1226.0 0.00 -1.20 10.16
## gender* 2.00 1.0 0.92 -1.16 0.01
## height 185.00 49.0 0.47 0.16 0.23
## weight 95.00 61.0 0.67 0.86 0.27
## bmi 37.10 22.6 0.53 0.95 0.09
## age 88.00 75.0 -0.01 -0.78 0.50
## WBBMC 3040.00 2345.0 0.30 0.27 10.42
## wbbmd 1.35 0.7 -0.15 -0.04 0.00
## fat 40825.00 36548.0 0.36 0.45 149.47
## lean 63059.00 43923.0 0.90 0.31 201.45
## pcfat 48.40 39.2 -0.49 -0.02 0.21
## hypertension 1.00 1.0 -0.03 -2.00 0.01
## diabetes 1.00 1.0 2.47 4.13 0.01
# Việc 5
## Mã hoá biến gender (F/M) thành biến sex với giá trị 0/1 (0= M; 1= F)
ob$sex[ob$gender=="M"]=0
ob$sex[ob$gender=="F"]=1
head(ob)
## id gender height weight bmi age WBBMC wbbmd fat lean pcfat hypertension
## 1 1 F 150 49 21.8 53 1312 0.88 17802 28600 37.3 0
## 2 2 M 165 52 19.1 65 1309 0.84 8381 40229 16.8 1
## 3 3 F 157 57 23.1 64 1230 0.84 19221 36057 34.0 1
## 4 4 F 156 53 21.8 56 1171 0.80 17472 33094 33.8 1
## 5 5 M 160 51 19.9 54 1681 0.98 7336 40621 14.8 0
## 6 6 F 153 47 20.1 52 1358 0.91 14904 30068 32.2 1
## diabetes sex
## 1 1 1
## 2 0 0
## 3 0 1
## 4 0 1
## 5 0 0
## 6 0 1
## Mã hoá biến bmi thành biến obese
ob$obese[ob$bmi< 18.5]="Underweight"
ob$obese[ob$bmi>= 18.5 & ob$bmi < 25]="Bình thường"
ob$obese[ob$bmi>= 25 & ob$bmi < 30]="Thừa cân"
ob$obese[ob$bmi>= 30]="Béo phì"
head(ob)
## id gender height weight bmi age WBBMC wbbmd fat lean pcfat hypertension
## 1 1 F 150 49 21.8 53 1312 0.88 17802 28600 37.3 0
## 2 2 M 165 52 19.1 65 1309 0.84 8381 40229 16.8 1
## 3 3 F 157 57 23.1 64 1230 0.84 19221 36057 34.0 1
## 4 4 F 156 53 21.8 56 1171 0.80 17472 33094 33.8 1
## 5 5 M 160 51 19.9 54 1681 0.98 7336 40621 14.8 0
## 6 6 F 153 47 20.1 52 1358 0.91 14904 30068 32.2 1
## diabetes sex obese
## 1 1 1 Bình thường
## 2 0 0 Bình thường
## 3 0 1 Bình thường
## 4 0 1 Bình thường
## 5 0 0 Bình thường
## 6 0 1 Bình thường
## Tạo biến số mới lean.kg và fat.kg tính toán lượng cơ (lean) và mỡ (fat) bằng đơn vị kg
lean.kg=ob$lean/1000
fat.kg=ob$fat/1000
## Tạo 1 tập dữ liệu men.overweight gồm nam giới quá cân và béo phì
men.overweight<-subset(ob,sex=="M" & bmi>= 25)
dim(men.overweight)
## [1] 0 15
## Tạo 1 tập dữ liệu Demo chỉ bao gồm 6 biến số là id, age, gender, height, weight và pcfat
Demo=data.frame(ob$id,ob$age,ob$gender,ob$height,ob$weight,ob$pcfat)
head(Demo)
## ob.id ob.age ob.gender ob.height ob.weight ob.pcfat
## 1 1 53 F 150 49 37.3
## 2 2 65 M 165 52 16.8
## 3 3 64 F 157 57 34.0
## 4 4 56 F 156 53 33.8
## 5 5 54 M 160 51 14.8
## 6 6 52 F 153 47 32.2
## Thống kê chéo thông qua câu lệnh Table1
library(table1)
##
## Attaching package: 'table1'
## The following objects are masked from 'package:base':
##
## units, units<-
table1(~bmi+fat+lean|gender,data=ob)
| F (N=862) |
M (N=355) |
Overall (N=1217) |
|
|---|---|---|---|
| bmi | |||
| Mean (SD) | 22.3 (3.05) | 22.7 (3.04) | 22.4 (3.06) |
| Median [Min, Max] | 22.1 [15.2, 37.1] | 22.5 [14.5, 34.7] | 22.2 [14.5, 37.1] |
| fat | |||
| Mean (SD) | 18200 (4950) | 15000 (5110) | 17300 (5210) |
| Median [Min, Max] | 17700 [6220, 40800] | 15100 [4280, 29900] | 17000 [4280, 40800] |
| lean | |||
| Mean (SD) | 32000 (3970) | 43800 (5820) | 35500 (7030) |
| Median [Min, Max] | 31500 [19100, 53400] | 43400 [28600, 63100] | 33600 [19100, 63100] |