Beberapa library yang perlu diinstal sebagai berikut :
library(ggplot2)
library(readxl)
library(ggthemes)
library(gridExtra)
Data diinput dari Microsoft Excel dengan syntax sebagai berikut :
setwd("~/Semester 2/Probabilitas dan Statiska/Pertemuan 3")
data <- read_excel("data_kesehatan.xlsx")
head(data)
## # A tibble: 6 × 5
## Umur `Jenis Kelamin` `Jumlah Anak` `Status Perokok` `Biaya Asuransi`
## <dbl> <chr> <dbl> <chr> <dbl>
## 1 19 Wanita 0 Ya 16885
## 2 18 Pria 1 Tidak 1726
## 3 28 Pria 3 Tidak 4449
## 4 33 Pria 0 Tidak 21984
## 5 32 Pria 0 Tidak 3867
## 6 31 Wanita 0 Tidak 3757
Dari data tersebut akan disajikan visualisasi data dalam bentuk Pie Chart. Berikut terlampir hasil visualisasi datanya :
pie_chart <- ggplot(data, aes(x = "", fill = `Jenis Kelamin` )) +
geom_bar(width = 1) +
coord_polar("y", start = 0) +
theme_minimal() +
labs(title = "Distribusi Jenis Kelamin") +
theme(axis.text.x = element_blank())
pie_chart
Visualisasi tersebut menggambarkan distribusi jumlah pria dan wanita dalam dataset yang telah diinputkan. Dari visualisasi tersebut dapat dijelaskan bahwa jumlah jenis kelamin pria lebih banyak daripada jumlah jenis kelamin wanita sebagai faktor-faktor yang akan mempengaruhi biaya asuransi.
Dari data tersebut akan disajikan visualisasi data dalam bentuk Bar Chart. Berikut terlampir hasil visualisasi datanya :
bar_chart <- ggplot(data, aes(x = `Status Perokok`, fill = `Status Perokok`)) +
geom_bar() +
theme_minimal() +
labs(title = "Distribusi Status Perokok", x = "Status Perokok", y = "Frekuensi")
bar_chart
Visualisasi tersebut menggambarkan distribusi jumlah status perokok dalam dataset yang telah diinputkan. Dari visualisasi data tersebut dapat dijelaskan bahwa dari total seluruh individu dalam data, jumlah individu yang tidak merokok lebih banyak dibandingkan jumlah individu yang merokok.
Dari data tersebut akan disajikan visualisasi data dalam bentuk Histogram. Berikut terlampir hasil visualisasi datanya :
density_plot <- ggplot(data, aes(x = `Umur`,fill = "Umur")) +
geom_density(alpha = 0.5) +
theme_minimal() +
labs(title = "Density Plot: Umur", x = "Umur", y = "Density")
density_plot
Hasil visualisasi tersebut menggambarkan distribusi umur dari dataset yang telah diinputkan. Dari visualisasi data tersebut dapat dijelaskan bahwa individu berumur 30 tahun dengan skala 0.029 merupakan responden terbanyak di antara umur 18-62 tahun.
Rata-rata umur nya adalah :
mean(data$Umur)
## [1] 35.72
Median dari umur adalah :
median(data$Umur)
## [1] 32
Modus dari umur adalah :
modus <- function(x) {
uniqx <- unique(x)
uniqx[which.max(tabulate(match(x, uniqx)))]
}
modus(data$Umur)
## [1] 37
Berikut adalah statistik 5 serangkai dari umur :
summary(data$Umur)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 18.00 25.00 32.00 35.72 46.00 62.00
Berikut adalah keragaman data pada variabel umur :
var(data$Umur)
## [1] 205.8767
Berikut adalah standar devisiasi data pada variabel umur :
sd(data$Umur)
## [1] 14.3484
Dari data tersebut akan disajikan visualisasi data dalam bentuk Dot Plot. Berikut terlampir hasil visualisasi datanya :
dot_plot <- ggplot(data, aes(x = `Umur`, y = `Jumlah Anak`)) +
geom_point(color = "pink", size = 2) +
theme_minimal() +
labs(title = "Dot Plot: Umur dan Jumlah Anak", x = "Umur", y = "Jumlah Anak")
dot_plot
Hasil visualisasi tersebut menggambarkan distribusi umur dan jumlah anak dari dataset yang telah diinputkan. Dari visualisasi data tersebut dapat dijelaskan bahwa sebagian besar individu yang tidak memiliki anak berada dikisaran umur 18-33 tahun.
Rata-rata dari jumlah anak adalah :
mean(data$`Jumlah Anak`)
## [1] 0.64
Median dari jumlah anak adalah :
median(data$`Jumlah Anak`)
## [1] 0
Modus dari jumlah anak adalah :
modus <- function(x) {
uniqx <- unique(x)
uniqx[which.max(tabulate(match(x, uniqx)))]
}
modus(data$`Jumlah Anak`)
## [1] 0
Berikut adalah statistik 5 serangkai dari umur :
summary(data$`Jumlah Anak`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0.00 0.00 0.00 0.64 1.00 3.00
Berikut adalah keragaman data pada variabel jumlah anak :
var(data$`Jumlah Anak`)
## [1] 0.9066667
Berikut adalah standar devisiasi data pada variabel jumlah anak :
sd(data$`Jumlah Anak`)
## [1] 0.9521905
histogram <- ggplot(data, aes(x = `Biaya Asuransi`)) +
geom_histogram(binwidth = 5000, fill = "pink", color = "black") +
theme_minimal() +
labs(title = "Histogram Biaya Asuransi", x = "Biaya Asuransi", y = "Frekuensi")
histogram
Dari hasil visualisasi data tersebut dapat dijelaskan bahwa jumlah biaya asuransi memiliki pentilan pada range 30000-40000 dan mayoritas membayar biaya asuransi pada range 1000-20000 dengan frekuensi tertinggi berada di bawah 10000.
Rata-rata dari biaya asuransi adalah :
mean(data$`Biaya Asuransi`)
## [1] 12491.24
Median dari biaya asuransi adalah :
median(data$`Biaya Asuransi`)
## [1] 7282
Modus dari biaya asuransi adalah :
modus <- function(x) {
uniqx <- unique(x)
uniqx[which.max(tabulate(match(x, uniqx)))]
}
modus(data$`Biaya Asuransi`)
## [1] 16885
Berikut adalah statistik 5 serangkai dari biaya asuransi :
summary(data$`Biaya Asuransi`)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 1137 3757 7282 12491 16885 39612
Berikut adalah keragaman data pada variabel biaya asuransi :
var(data$`Biaya Asuransi`)
## [1] 152555278
Berikut adalah standar devisiasi data pada variabel biaya asuransi:
sd(data$`Biaya Asuransi`)
## [1] 12351.33
Note that the echo = FALSE parameter was added to the
code chunk to prevent printing of the R code that generated the
plot.