Bộ dữ liệu “diamonds” là một tập dữ liệu được tích hợp sẵn trong RStudio, chứa thông tin về 53.940 viên kim cương cắt tròn. Dữ liệu bao gồm các thuộc tính quan trọng như giá, trọng lượng, chất lượng cắt, màu sắc, độ trong, kích thước và tỷ lệ.
library(dplyr)
##
## 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)
q <- diamonds
q %>% ggplot(aes(x = cut)) +geom_bar()
- Biểu đồ thể hiện số lượng kim cương thuộc từng cấp độ chất lượng khác
nhau trong bộ dữ liệu diamonds - Trục x thể hiện các cấp độ chất lượng
kim cương, từ thấp đến cao (từ “Fair” đến “Ideal”) - Trục y thể hiện số
lượng kim cương tương ứng với mỗi cấp độ chất lượng. - Chiều cao của mỗi
cột thể hiện số lượng kim cương thuộc cấp độ chất lượng đó
q %>% ggplot(aes(x = carat)) +geom_bar()
câu lệnh này tạo ra một biểu đồ cột thể hiện phân phối của các giá trị
trong cột carat của dữ liệu q. Mỗi cột trên biểu đồ đại diện cho một giá
trị duy nhất của carat, và chiều cao của cột thể hiện số lần xuất hiện
của giá trị đó trong dữ liệu. - Trục x thể hiện kích thước của kim cương
- Trục y thể hiện số lượng kim cương tương ứng với mỗi kích thước
q %>% ggplot(aes(x = color)) +geom_bar()
- Đồ thị thể hiện số lượng kim cương thuộc từng nhóm màu khác nhau trong
bộ dữ liệu diamonds - Trục x thể hiện các màu sắc của kim cương - Trục y
thể hiện số lượng kim cương tương ứng với mỗi màu - Chiều cao của mỗi
cột thể hiện số lượng kim cương thuộc màu đó
q %>% ggplot(aes(x = clarity)) +geom_bar()
- Biểu đồ thể hiện số lượng kim cương thuộc từng cấp độ độ trong suốt
khác nhau trong bộ dữ liệu diamonds - Trục x thể hiện các cấp độ độ
trong suốt kim cương, từ thấp đến cao - Trục y thể hiện số lượng kim
cương tương ứng với mỗi cấp độ độ trong suố - Chiều cao của mỗi cột thể
hiện số lượng kim cương thuộc cấp độ độ trong suốt đó
q %>% ggplot(aes(x = depth)) +geom_bar()
- Biểu đồ thể hiện số lượng kim cương thuộc từng độ sây khác nhau trong
bộ dữ liệu diamonds - Trục x thể hiện độ sâu của kim cương - Trục y thể
hiện số lượng kim cương tương ứng với mỗi độ sâu - Chiều cao của mỗi cột
thể hiện số lượng kim cương thuộc độ sâu đó
q %>% ggplot(aes(x = table)) +geom_bar()
câu lệnh này tạo ra một biểu đồ cột (bar chart) thể hiện phân phối của
các giá trị trong cột table của dữ liệu q. Mỗi cột trên biểu đồ biểu
diễn một giá trị duy nhất của table, và chiều cao của cột thể hiện tần
suất (số lần xuất hiện) của giá trị đó trong dữ liệu. câu lệnh này tạo
ra một biểu đồ cột thể hiện phân phối của các giá trị trong cột table
của dữ liệu q. Mỗi cột trên biểu đồ đại diện cho một giá trị duy nhất
của table, và chiều cao của cột thể hiện số lần xuất hiện của giá trị đó
trong dữ liệu.
q %>% ggplot(aes(x = price)) +geom_bar()
câu lệnh này tạo ra một biểu đồ cột (bar chart) thể hiện phân phối của
các giá trị trong cột price của dữ liệu q. Mỗi cột trên biểu đồ biểu
diễn một giá trị duy nhất của price, và chiều cao của cột thể hiện tần
suất (số lần xuất hiện) của giá trị đó trong dữ liệu.
q %>% ggplot(aes(x = x)) +geom_bar()
### 9.Đồ thị thể hiện số lượng kim cương theo biến
y
q %>% ggplot(aes(x = y)) +geom_bar()
### 10.Đồ thị thể hiện số lượng kim cương theo biến
z
q %>% ggplot(aes(x = z)) +geom_bar()
q %>% group_by(cut,color) %>% summarise(n=n())%>%ggplot(aes(x = cut,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'cut'. You can override using the `.groups`
## argument.
Biểu đồ giúp hiểu được phân phối của các loại kim cương (cut) trong từng
mức độ màu sắc khác nhau. Mỗi cột trong biểu đồ thể hiện số lượng các
loại kim cương (cut) cho mỗi mức độ màu sắc. Đối với mỗi mức độ màu sắc,
chúng ta có thể quan sát được sự phân bố của các loại kim cương (cut) là
như thế nào. Sự sắp xếp theo màu sắc giúp ta so sánh phân phối của các
loại kim cương trong từng mức độ màu sắc, từ đó đánh giá được mức độ ảnh
hưởng của màu sắc đối với chất lượng cắt của viên kim cương
q %>% group_by(carat,color) %>% summarise(n=n())%>%ggplot(aes(x = carat,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'carat'. You can override using the
## `.groups` argument.
### 12.tạo các biểu đồ con dựa trên giá trị của biến
carat
q %>% group_by(carat,color) %>% summarise(n=n())%>%ggplot(aes(x = carat,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'carat'. You can override using the
## `.groups` argument.
câu lệnh này tạo ra một biểu đồ dạng cột thể hiện mối quan hệ giữa khối
lượng (carat) và số lượng (n) của các kim cương, được phân loại theo màu
sắc (color). Các cột được xếp chồng lên nhau (position = ‘dodge’) và
biểu đồ được phân chia thành các nhóm nhỏ dựa trên màu sắc.
q %>% group_by(clarity,color) %>% summarise(n=n())%>%ggplot(aes(x = clarity,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'clarity'. You can override using the
## `.groups` argument.
câu lệnh này tạo ra một biểu đồ dạng cột thể hiện mối quan hệ giữa độ
trong suốt (clarity) và số lượng (n) của các kim cương, được phân loại
theo màu sắc (color). Các cột được xếp chồng lên nhau (position =
‘dodge’) và biểu đồ được phân chia thành các nhóm nhỏ dựa trên màu
sắc.
q %>% group_by(depth,color) %>% summarise(n=n())%>%ggplot(aes(x = depth,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'depth'. You can override using the
## `.groups` argument.
câu lệnh này tạo ra một biểu đồ dạng cột thể hiện mối quan hệ giữa độ
sâu (depth) và số lượng (n) của các kim cương, được phân loại theo màu
sắc (color). Các cột được xếp chồng lên nhau (position = ‘dodge’) và
biểu đồ được phân chia thành các nhóm nhỏ dựa trên màu sắc.
q %>% group_by(table,color) %>% summarise(n=n())%>%ggplot(aes(x = table,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'table'. You can override using the
## `.groups` argument.
câu lệnh này tạo ra một biểu đồ dạng cột thể hiện mối quan hệ giữa độ
rộng mặt bàn (table) và số lượng (n) của các kim cương, được phân loại
theo màu sắc (color). Các cột được xếp chồng lên nhau (position =
‘dodge’) và biểu đồ được phân chia thành các nhóm nhỏ dựa trên màu
sắc.
q %>% group_by(price,color) %>% summarise(n=n())%>%ggplot(aes(x = price,y = n)) +geom_col(position = 'dodge') +facet_wrap(~color)
## `summarise()` has grouped output by 'price'. You can override using the
## `.groups` argument.
câu lệnh này tạo ra một biểu đồ dạng cột thể hiện mối quan hệ giữa giá
(price) và số lượng (n) của các kim cương, được phân loại theo màu sắc
(color). Các cột được xếp chồng lên nhau (position = ‘dodge’) và biểu đồ
được phân chia thành các nhóm nhỏ dựa trên màu sắc.
q <- q %>% mutate(caratC = cut(carat,5, label = c('rất nhỏ', 'nhỏ','vừa','lớn','rất lớn')))
q %>% ggplot(aes(x = caratC)) +geom_bar(fill = 'red')
câu lệnh này tạo ra một biểu đồ cột thể hiện phân phối của các giá trị
trong cột mới caratC, được tạo ra bằng cách chia giá trị của cột carat
thành 5 nhóm khác nhau. Cột caratC được sử dụng trên trục x của biểu đồ,
và màu fill của các cột được thiết lập là màu đỏ.
q <- q %>% group_by(cut, color) %>% summarise(n = n())
## `summarise()` has grouped output by 'cut'. You can override using the `.groups`
## argument.
q %>% ggplot(aes(x = cut, y = n)) +
geom_col(data = q %>% filter(color == 'D'), fill = 'red') +
geom_col(data = q %>% filter(color == 'J'), fill = 'blue')
câu lệnh này tạo ra một biểu đồ dạng cột thể hiện số lượng của mỗi loại
cắt (cut), được phân loại theo màu sắc (color). Các cột có màu đỏ hoặc
xanh tương ứng với các giá trị cụ thể của color.
q <-diamonds
q %>% group_by(color) %>% summarise(k= mean(carat)) %>% ggplot(aes(color,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của khối lượng kim cương (carat) cho mỗi màu sắc. Các cột được tô màu đỏ và có nhãn số liệu đính kèm. - Trục x: Thể hiện các màu sắc của kim cương. - Trục y: Thể hiện giá trị trung bình trọng lượng carat
q %>% group_by(cut) %>% summarise(k= mean(carat)) %>%
ggplot(aes(cut,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'cut', y = 'mean')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của khối
lượng (carat) cho mỗi loại cắt (cut). Các cột được tô màu đỏ và có nhãn
số liệu đính kèm. - Trục x: Thể hiện các chất lượng cắt khác nhau của
kim cương - Trục y: Thể hiện giá trị trung bình trọng lượng carat
q %>% group_by(clarity) %>% summarise(k= mean(carat)) %>%
ggplot(aes(clarity,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'clarity', y = 'mean')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của khối
lượng (carat) cho mỗi loại clarity (độ trong suốt). Các cột được tô màu
đỏ và có nhãn số liệu đính kèm. - Trục x: Thể hiện các độ trong suốt
khác nhau của kim cương - Trục y: Thể hiện giá trị trung bình trọng
lượng carat
q %>% group_by(color) %>% summarise(k= mean(price)) %>%
ggplot(aes(color,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'Màu', y = 'mean')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của giá
cho mỗi loại màu. Các cột được tô màu đỏ và có nhãn số liệu đính kèm. -
Trục x: Thể hiện các màu sắc khác nhau của kim cương - Trục y: Thể hiện
giá trị trung bình giá bán
q %>% group_by(cut) %>% summarise(k= mean(price)) %>%
ggplot(aes(cut,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'Chất lượng cắt', y = 'mean')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của giá
cho mỗi loại cắt. Các cột được tô màu đỏ và có nhãn số liệu đính kèm. -
Trục x: Thể hiện các chất lượng cắt khác nhau của kim cương - Trục y:
Thể hiện giá trị trung bình giá bán
q %>% group_by(clarity) %>% summarise(k= mean(price)) %>%
ggplot(aes(clarity,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'Độ trong suốt', y = 'mean')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của giá
cho mỗi mức độ trong suốt của kim cương. Các cột được tô màu đỏ và có
nhãn số liệu đính kèm. - Trục x: Thể hiện các độ trong suốt khác nhau
của kim cương - Trục y: Thể hiện giá trị trung bình giá bán
q %>% group_by(color) %>% summarise(k= var(price)) %>%
ggplot(aes(color,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'Màu', y = 'var')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị phương sai của giá
cho mỗi loại màu của kim cương. Các cột được tô màu đỏ và có nhãn số
liệu đính kèm. - Trục x: Thể hiện các màu sắc khác nhau của kim cương -
Trục y: Thể hiện phương sai của giá bán
q %>% group_by(cut) %>% summarise(k= var(price)) %>%
ggplot(aes(cut,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'Chất lượng cắt', y = 'var')
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị phương sai của giá
cho mỗi loại chất lượng cắt của kim cương. Các cột được tô màu đỏ và có
nhãn số liệu đính kèm. - Trục x: Thể hiện các chất lượng cắt khác nhau
của kim cương - Trục y: Thể hiện phương sai của giá bán
q %>% group_by(clarity) %>% summarise(k= var(price)) %>%
ggplot(aes(clarity,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 0.85, color = 'black') +
labs(x = 'Độ trong suốt', y = 'var')
câu lệnh này tạo ra một biểu đồ cột thể hiện phương sai của giá cho mỗi
mức độ trong suốt của kim cương. Các cột được tô màu đỏ và có nhãn số
liệu đính kèm. - Trục x: Thể hiện các độ trong suốt khác nhau của kim
cương - Trục y: Thể hiện phương sai của giá bán
q %>% group_by(cut) %>% summarise(k= var(carat)) %>%
ggplot(aes(cut,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,3)),vjust = 1, color = 'black') +
labs(x = 'Chất lượng cắt', y = 'var')
câu lệnh này tạo ra một biểu đồ cột thể hiện phương sai của trọng lượng
carat cho mỗi loại chất lượng cắt của kim cương. Các cột được tô màu đỏ
và có nhãn số liệu đính kèm. - Trục x: Thể hiện các chất lượng cắt khác
nhau của kim cương - Trục y: Thể hiện phương sai của trọng lượng
carat
q %>% group_by(clarity) %>% summarise(k= var(carat)) %>%
ggplot(aes(clarity,k)) +
geom_col(fill='red') +
geom_text(aes(label = round(k,2)),vjust = 1, color = 'black') +
labs(x = 'Độ trong suốt', y = 'var')
câu lệnh này tạo ra một biểu đồ cột thể hiện phương sai của trọng lượng
carat cho mỗi mức độ trong suốt của kim cương. Các cột được tô màu đỏ và
có nhãn số liệu đính kèm. - Trục x: Thể hiện các độ trong suốt khác nhau
của kim cương - Trục y: Thể hiện phương sai của trọng lượng carat
q %>% group_by(cut,color) %>% summarise(k =mean(price)) %>%
ggplot(aes(x = cut,y = k)) +
geom_col(position = 'dodge', fill= 'blue') +
facet_wrap(~color) +
geom_text(aes(label = round(k,1)),vjust = 0.25, color = 'black') +
labs(x = 'Loại', y = 'mean')
## `summarise()` has grouped output by 'cut'. You can override using the `.groups`
## argument.
câu lệnh này tạo ra một biểu đồ cột thể hiện giá trị trung bình của giá
cho mỗi loại cắt của kim cương, được phân loại theo màu. Các cột được tô
màu xanh và có nhãn số liệu đính kèm.