## [1] 1338 7
## [1] "age" "sex" "bmi" "children" "smoker" "region" "charges"
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library("ggplot2")
g %>% group_by(sex) %>% summarise(n = n()) %>%
ggplot(aes(n,sex)) +
geom_col(fill='pink') +
labs(title = " Biểu đồ 1. thể hiện số người tham gia bảo hiểm y tế theo sex(giới tính) ") +
geom_text(aes(label = n),vjust = 1, color = 'black') +
labs(x = 'Số lượng', y = 'giới tính')
Nhận xét: - Nhìn trong biểu đồ dễ dàng nhận
thấy có 676 người giới tính nam tham gia bảo hiểm y tế và có 662 người
giới tính nữ tham gia bảo hiểm y tế - Cho thấy trong xã hội hầu hết dù
là giới tính nào thì mọi người vẫn tham gia bảo hiểm y tế đầy đủ, số
lượng người tham gia bảo hiểm y tế có giới tính nam và nữ xấp xỉ bằng
nhau.
g %>% group_by(children) %>% summarise(n = n()) %>%
ggplot(aes(children,n)) +
geom_col(fill='lightgreen') +
geom_text(aes(label = n),vjust = 1, color = 'orange') +
labs(x = 'số con cái', y = 'số lượng')
Nhận xét: - Kết quả cho thấy gia đình không có
con chiếm đa số trong số lượng người tham gia bảo hiểm y tế - Có 574
người tham gia bảo hiểm y tế không có con, 324 người tham gia bảo hiểm y
tế có 1 con, 240 người tham gia bảo hiểm y tế có 2 con, 157 người tham
gia bảo hiểm y tế có 3 con, 25 người tham gia bảo hiểm y tế có 4 con, 18
người tham gia bảo hiểm y tế có 5 con - Như thế cho thấy người có càng
nhiều con thì số lượng tham gia bảo hiểm sẽ giảm đi.
g %>% group_by(region) %>% summarise(n = n()) %>%
ggplot(aes(n,region)) +
geom_col(fill='pink') +
labs(title = " Biểu đồ 3. thể hiện số người tham gia bảo hiểm y tế theo region(khu vực) ") +
geom_text(aes(label = n),vjust = 1, color = 'black') +
labs(x = 'Số lượng', y = 'khu vực')
Nhận xét: - Kết quả cho hàng ứng với 325 người
tham gia bảo hiểm y tế ở vùng southwest(Tây Nam), 364 người tham gia bảo
hiểm y tế ở vùng southeast(đông nam), 325 người tham gia bảo hiểm y tế ở
vùng northwest(tây bắc),324 người tham gia bảo hiểm y tế ở vùng
northeast(tây nam)
g %>% ggplot(aes(x = charges)) +
geom_histogram(data = g %>% filter(smoker == 'no'), binwidth = 5000, fill = 'black') +
geom_histogram(data = g %>% filter(smoker == 'yes'), binwidth = 5000, fill = 'white')
Nhận xét: - Kết quả cho thấy phần lớn người
không hút thuốc chiếm tỷ lệ chi phí tham gia bảo hiểm y tế cao hơn người
có hút thuốc với chi phí tham gia bảo hiểm y tế
## Warning: The following aesthetics were dropped during statistical transformation: fill.
## ℹ This can happen when ggplot fails to infer the correct grouping structure in
## the data.
## ℹ Did you forget to specify a `group` aesthetic or to convert a numerical
## variable into a factor?
g %>% group_by(age,sex) %>% summarise(m = mean(bmi)) %>%
ggplot(aes(x = age,y = m)) +
geom_col(position = 'dodge') +
facet_wrap(~sex) +
geom_text(aes(label = round(m))) +
labs(x = 'age', y = 'Số lượng')## `summarise()` has grouped output by 'age'. You can override using the `.groups`
## argument.
Nhận xét: - Cột x thể hiện tuổi từ 18 đến 64
tuổi - Cột y thể hiện giá trị trung bình chỉ số khối cơ thể dựa vào cột
x và giới tính - Kết quả cho thấy giá trị trung bình theo từng độ tuổi
và theo từng giới tính biểu thị rõ ràng như trên, giúp dễ nhận biết để
lấy số liệu
g %>% group_by(age,region) %>% summarise(n=n()) %>%
ggplot(aes(x = age,y = n)) +
geom_col(position = 'dodge') +
facet_wrap(~region) +
geom_text(aes(label = n),vjust = 1, color = 'white') +
labs(x = 'Tuổi', y = 'Số lượng')## `summarise()` has grouped output by 'age'. You can override using the `.groups`
## argument.
Nhận xét: - Cột x thể hiện tuổi của người tham
gia bâỏ hiểm y tế
- Cột y thể hiện số lượng người tham gia bảo hiểm y tế - Mỗi đồ thị
tượng trưng cho bốn 4 khu vực khác nhau - Từ kết quả trên cho thấy độ
tuổi 18 tring 4 khu vực đều chiếm số lượng khá cao so với các độ tuổi
khác.
g2 <- g %>% group_by(region) %>% summarise(avg_price15= mean(bmi))
g2 %>% ggplot(aes(x = region, y = avg_price15))+
geom_col(fill = 'green') +
geom_text(aes(label = round(avg_price15)), vjust = 2, color ='white') +
labs(title = 'Hình 2.16: Chi phí khối cơ thể trung bình theo vùng miền' , x = 'region', y = 'Average Price')
Nhận xétt: - Cột x thể hiện khu vực với 4 vùng
northeast, northwest. Southeast, southwest. - Cột y thể hiện tổng chỉ số
khối cơ thể trung bình
g %>% group_by(age,sex) %>% summarise(m = mean(bmi)) %>%
ggplot(aes(x = age,y = m)) +
geom_col(position = 'dodge') +
facet_wrap(~sex) +
geom_text(aes(label= round(m)), vjust=2, color='red')+
labs(x= 'tuổi', y= 'chỉ số khối cơ thể trung bình',title='Hình 23: Giá trị trung bình của bmi theo age và sex ')## `summarise()` has grouped output by 'age'. You can override using the `.groups`
## argument.
- Cột x thể hiện tuổi của người tham gia bảo hiểm y tế từ 18 đến 64 tuổi
- Cột y thể hiện chỉ số khối cơ thể trung bình theo tuổi và giới tính -
Hai đồ thị tương ứng với hai giới tính nam và nữ
g %>% group_by(region) %>% summarise(m= median(charges)) %>%
ggplot(aes(x = region,y = m)) +
geom_col(position = 'dodge') +
geom_text(aes(label = round(m,2)), vjust = 2, color = 'white') +
labs(x = 'vùng', y = 'Trung vị',title = "Hình 28: Biểu đồ trung vị chi phí bảo hiểm theo vùng")
Nhận xét: - Cột x thể hiện vùng với 4 vùng
northeast, northwest, southeast, southwwest. - Cột y thể hiện trung vị
chi phí bảo hiểm y tế - Kết quả thể hiện số lượng trung vị chi phí bảo
hiểm y tế theo 4 vùng
Nhận xét: - cột x thể hiện chi phí bảo hiểm y
tế - Cột y thể hiện mật độ chi phí bảo hiểm y tế - Hai đồ thị tương ứng
với 2 giới tính nam và nữ
Nhận xét: - Cột x thể hiện chi phí bảo hiểm y
tế - Cột y thể hiện mật độ chi phí bảo hiểm theo vùng
- 4 đồ thị tương đương với mỗi vùng khác nhau
g %>% group_by(sex) %>% summarise(m= median(charges)) %>%
ggplot(aes(x = sex,y = m)) +
geom_col(position = 'dodge') +
geom_text(aes(label = round(m,2)), vjust = 2, color = 'white') +
labs(x = 'giới tính', y = 'Trung vị',title = "Hình 28: Biểu đồ trung vị chi phí bảo hiểm theo giới tính")
Nhận xét: - Cột x thể hiện giới tính tượng
trưng cho hai cột - Cột y thể hiện trung vị chi phí bảo hiểm y tế - giữa
hai cột không có sự chênh lệnh quá nhiều
g %>% group_by(age,sex) %>% summarise(m = mean(charges)) %>%
ggplot(aes(x = age,y = m)) +
geom_col(position = 'dodge') +
facet_wrap(~sex) +
geom_text(aes(label= round(m)), vjust=2, color='red')+
labs(x= 'Tuổi', y= 'chi phí trung bình',title='Hình 23: Giá trị trung bình của charges theo age và sex ')## `summarise()` has grouped output by 'age'. You can override using the `.groups`
## argument.
Nhận xét: - Cột x thể hiện độ tuổi từ 18 đến
64 tuổi - Cột y thể hiện chi phí BHYT trung bình
- 2 đồ thị tương ứng với 2 giới tính
- Kết quả cho thấy số liệu cụ thể của từng độ tuổi và từng giới tính
g3 <- g %>% group_by(region) %>% summarise(avg_price15= mean(charges))
g3 %>% ggplot(aes(x = region, y = avg_price15))+
geom_col(fill = 'green') +
geom_text(aes(label = round(avg_price15)), vjust = 2, color ='white') +
labs(title = 'Hình 2.16: Chi phí y tế trung bình theo bảo hiểm y tế theo vùng miền' , x = 'region', y = 'Average Price')
Nhận xét: - Cột x thể hiện khu vực với 4 khu
vực khác nhau
- cột y thể hiện chi phí y tế trung bình theo mỗi vùng
Nhận xét: - Kết quả cho thấy 4 cột ngang tương
ứng với 4 vùng
g %>% group_by(bmi,region) %>% summarise(n=n()) %>%
ggplot(aes(x = bmi,y = n)) +
geom_col(position = 'dodge') +
facet_wrap(~region) +
geom_text(aes(label = n),vjust = 2, color = 'green') +
labs(x = 'bmi', y = 'Số lượng')## `summarise()` has grouped output by 'bmi'. You can override using the `.groups`
## argument.
Nhận xét: - Kết quả cho ra số liệu cụ thể cho
mỗi bmi và 4 đồ thị tương ứng cho mỗi phòng
Nhận xét: - Cột x thể hiện chỉ số bmi - cột y
thể hiện số lượng - Kết quả cho ra đồ thị phân theo 4 màu sắc tương
đương 4 vùng theo chỉ bmi