setwd("D:/Study/VDS")
netflix = read.csv("netflix_titles.csv")
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3
costomcolor <- c("blue", "pink", "purple")
pie <- ggplot(netflix, aes(x = "", fill = factor(type))) +
geom_bar(width = 1) +
theme(axis.line = element_blank(),
plot.title = element_text(hjust = 0.5, size=22)) +
labs(fill = "class",
x=NULL, y= NULL,
title = "Pie chart of netflix shows ") +
coord_polar(theta = "y", start = 0) +
scale_fill_manual(values = costomcolor) # buat ubah warna yg sesuai yg di list
pie
par(c(2,1))
## Warning in par(c(2, 1)): argument 1 does not name a graphical parameter
## NULL
ggplot(netflix, aes(x = "", fill = factor(type))) + geom_bar()
ggplot(netflix, aes(y = "", fill = factor(type))) + geom_bar()
## Case Study
#wrangle
library(ggplot2)
library(dplyr) # data manipulation
library(tidyr) #data manipulation
library('readr') #data input
library('stringr') # string manipulation
library('forcats') #factor manipulation
library('modelr') # factor manipulation
Pclass adalah kelas Tiket: tiket kelas pertama (1), kedua (2), dan ketiga (3) digunakan. Kami mengubahnya menjadi sebuah faktor.
Name adalah nama penumpang. Nama-nama tersebut juga mengandung gelar dan beberapa orang mungkin memiliki nama keluarga yang sama; menunjukkan hubungan kekeluargaan. Kita tahu bahwa beberapa judul dapat menunjukkan kelompok umur tertentu. Misalnya Tuan adalah laki-laki sedangkan Tuan adalah laki-laki. Fitur ini adalah string karakter dengan panjang variabel tetapi formatnya serupa.
Sex menjadi indikator apakah penumpangnya perempuan atau laki-laki. Ini adalah faktor lain yang kami buat dari string teks kategorikal.
Age adalah bilangan bulat usia penumpang. Ada nilai NaN di kolom ini.
SibSp adalah fitur bilangan bulat ordinal lainnya yang menggambarkan jumlah saudara kandung atau pasangan yang bepergian dengan setiap penumpang.
Parch adalah fitur bilangan bulat ordinal lainnya yang memberikan jumlah orang tua atau anak yang bepergian dengan setiap penumpang.
Ticket adalah string karakter dengan panjang variabel yang memberikan nomor tiket.
Fare adalah fitur mengambang yang menunjukkan berapa banyak setiap penumpang membayar untuk perjalanan mereka yang berkesan.
Cabin memberikan nomor kabin setiap penumpang. Ini adalah fitur string lainnya.
Embarked menunjukkan pelabuhan embarkasi sebagai faktor kategoris.
train <- read.csv("w11train.csv")
head(train)
## PassengerId Survived Pclass
## 1 1 0 3
## 2 2 1 1
## 3 3 1 3
## 4 4 1 1
## 5 5 0 3
## 6 6 0 3
## Name Sex Age SibSp Parch
## 1 Braund, Mr. Owen Harris male 22 1 0
## 2 Cumings, Mrs. John Bradley (Florence Briggs Thayer) female 38 1 0
## 3 Heikkinen, Miss. Laina female 26 0 0
## 4 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35 1 0
## 5 Allen, Mr. William Henry male 35 0 0
## 6 Moran, Mr. James male NA 0 0
## Ticket Fare Cabin Embarked
## 1 A/5 21171 7.2500 S
## 2 PC 17599 71.2833 C85 C
## 3 STON/O2. 3101282 7.9250 S
## 4 113803 53.1000 C123 S
## 5 373450 8.0500 S
## 6 330877 8.4583 Q
#ver pake library
train <- train %>% mutate(
Survived = factor(Survived),
Pclass = factor(Pclass),
Embarked = factor(Embarked),
Sex = factor(Sex)
)
head(train)
## PassengerId Survived Pclass
## 1 1 0 3
## 2 2 1 1
## 3 3 1 3
## 4 4 1 1
## 5 5 0 3
## 6 6 0 3
## Name Sex Age SibSp Parch
## 1 Braund, Mr. Owen Harris male 22 1 0
## 2 Cumings, Mrs. John Bradley (Florence Briggs Thayer) female 38 1 0
## 3 Heikkinen, Miss. Laina female 26 0 0
## 4 Futrelle, Mrs. Jacques Heath (Lily May Peel) female 35 1 0
## 5 Allen, Mr. William Henry male 35 0 0
## 6 Moran, Mr. James male NA 0 0
## Ticket Fare Cabin Embarked
## 1 A/5 21171 7.2500 S
## 2 PC 17599 71.2833 C85 C
## 3 STON/O2. 3101282 7.9250 S
## 4 113803 53.1000 C123 S
## 5 373450 8.0500 S
## 6 330877 8.4583 Q
summary(train)
## PassengerId Survived Pclass Name Sex
## Min. : 1.0 0:549 1:216 Length:891 female:314
## 1st Qu.:223.5 1:342 2:184 Class :character male :577
## Median :446.0 3:491 Mode :character
## Mean :446.0
## 3rd Qu.:668.5
## Max. :891.0
##
## Age SibSp Parch Ticket
## Min. : 0.42 Min. :0.000 Min. :0.0000 Length:891
## 1st Qu.:20.12 1st Qu.:0.000 1st Qu.:0.0000 Class :character
## Median :28.00 Median :0.000 Median :0.0000 Mode :character
## Mean :29.70 Mean :0.523 Mean :0.3816
## 3rd Qu.:38.00 3rd Qu.:1.000 3rd Qu.:0.0000
## Max. :80.00 Max. :8.000 Max. :6.0000
## NA's :177
## Fare Cabin Embarked
## Min. : 0.00 Length:891 : 2
## 1st Qu.: 7.91 Class :character C:168
## Median : 14.45 Mode :character Q: 77
## Mean : 32.20 S:644
## 3rd Qu.: 31.00
## Max. :512.33
##
p_age : sumbu x itu umur sumbu y itu countnya guides(fill=FALSE) untk menghilangkan legendnya kalo mau ada tigggal diganti true
custom_colors <- c("#FF8EC8", "#46DBDF")
p_age = ggplot(train) +
geom_freqpoly(mapping = aes(x = Age, color = Survived), binwidth = 1) +
scale_color_manual(values = custom_colors) +
theme(legend.position = "right")
p_sex = ggplot(train, mapping = aes(x = Sex, fill = Survived)) +
geom_bar(stat='count', position='fill') +
labs(x = 'Sex') +
scale_fill_manual(values = custom_colors) +
theme(legend.position = "right")
p_class = ggplot(train, mapping = aes(x = Pclass, fill = Survived, colour = Survived)) +
geom_bar(stat='count', position='fill') +
labs(x = 'Pclass') +
scale_fill_manual(values = custom_colors) +
theme(legend.position = "none")
p_emb = ggplot(train, aes(Embarked, fill = Survived)) +
geom_bar(stat='count', position='fill') +
labs(x = 'Embarked') +
scale_fill_manual(values = custom_colors) +
theme(legend.position = "none")
p_sib = ggplot(train, aes(SibSp, fill = Survived)) +
geom_bar(stat='count', position='fill') +
labs(x = 'SibSp') +
scale_fill_manual(values = custom_colors) +
theme(legend.position = "none")
p_par = ggplot(train, aes(Parch, fill = Survived)) +
geom_bar(stat='count', position='fill') +
labs(x = 'Parch') +
scale_fill_manual(values = custom_colors) +
theme(legend.position = "none")
p_fare = ggplot(train) +
geom_freqpoly(mapping = aes(Fare, color = Survived), binwidth = 0.05) +
scale_x_log10() +
scale_color_manual(values = custom_colors) +
theme(legend.position = "none")
p_age
Fig. 2
p_sex
Fig. 2
p_fare
Fig. 2
p_class
Fig. 2
p_emb
Fig. 2
p_sib
Fig. 2
p_par
Fig. 2
colorsRainbow <- c("#FF8EC8", "#FFDF51", "#46DBDF", "#FF8F46", "#42BAB7", "#DB0000")
piep <- ggplot(train, aes(x = "", fill = factor(Pclass))) +
geom_bar(width = 1) +
theme(axis.line = element_blank(),
plot.title = element_text(hjust = 0.5, size=22)) +
labs(fill = "class",
x=NULL, y= NULL,
title = "Pie chart of Pclass ") +
coord_polar(theta = "y", start = 0) +
scale_fill_manual(values = colorsRainbow)
piep
# Membuat histogram
hist_p <- ggplot(train, aes(x = Pclass)) +
geom_bar() +
labs(title = "Distribusi Penumpang berdasarkan Kelas Tiket", x = "Kelas Tiket", y = "Jumlah Penumpang")
hist_p
perbandingan banyaknya jenis kelamin yang ada
colorsEarth <- c("#DA4511", "#FFBD00", "#6A953F", "#9A6233", "#D3AE7C", "#307CA1")
piep <- ggplot(train, aes(x = "", fill = factor(Sex))) +
geom_bar(width = 1) +
theme(axis.line = element_blank(),
plot.title = element_text(hjust = 0.5, size=22)) +
labs(fill = "class",
x=NULL, y= NULL,
title = "Distribusi Penumpang berdasarkan Jenis Kelamin") +
coord_polar(theta = "y", start = 0) +
scale_fill_manual(values = colorsEarth)
piep
# Membuat bar chart
ggplot(train, aes(x = Embarked)) +
geom_bar() +
labs(title = "Distribusi Penumpang berdasarkan Pelabuhan Embarkasi", x = "Pelabuhan Embarkasi", y = "Jumlah Penumpang")
# Membuat histogram
ggplot(train, aes(x = Age)) +
geom_histogram() +
labs(title = "Distribusi Usia Penumpang", x = "Usia", y = "Jumlah Penumpang")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 177 rows containing non-finite outside the scale range
## (`stat_bin()`).