Modul 5
Modul 5
Analysis dengan
R Studio
Modul Kelima
Pengelolaan Data dengan R
Import dan Export Data R
Import Data
CSV
data <- read.csv("file.csv")
data <- read_csv("file.csv") tidyverse version
Excel
library(readxl)
data <- read_excel("file.xlsx")
Export Data
write.csv(data, "output.csv")
write_excel_csv(data, "output.csv")
Pengelolaan Data dengan R
Data Manipulation dengan dplyr r
library(dplyr)
Select kolom
data_select <- data %>%
select(kolom1, kolom2)
Filter baris
ldata_filter <- data %>%
filter(kolom1 > 50)
Arrange/Sort
data_sort <- data %>%
arrange(desc(kolom1))
Mutate (membuat kolom baru)
data_mutate <- data %>%
mutate(kolom_baru = kolom1 + kolom2)
Pengelolaan Data dengan R
Data Cleaning R
Menangani missing values
Cek missing values
is.na(data)
sum(is.na(data))
Hapus missing values
data_clean <- na.omit(data)
Replace missing values
data$kolom[is.na(data$kolom)] <- mean(data$kolom,
na.rm = TRUE)
Menghapus duplikat
data_unique <- distinct(data)
Mengubah tipe data
data$kolom <- as.numeric(data$kolom)
data$tanggal <- as.Date(data$tanggal)
Pengelolaan Data dengan R
Data Reshaping dengan tidyr R
library(tidyr)
Wide ke Long format
data_long <- data %>%
pivot_longer(
cols = c(kolom1, kolom2),
names_to = "variable",
values_to = "value")
Long ke Wide format
data_wide <- data %>%
pivot_wider(
names_from = variable,
values_from = value)
01 Dasar-dasar ggplot2 R library(ggplot2)
Struktur dasar
ggplot(data = dataset, aes(x = x_var, y = y_var)) +
geom_[tipe_plot]()
Visualisasi
02 Jenis-jenis Plot Dasar
Data dengan Scatter Plot R
Scatter plot sederhana
ggplot2 ggplot(data, aes(x = x_var, y = y_var)) +
geom_point()
Dengan warna berdasarkan kategori
ggplot(data, aes(x = x_var, y = y_var, color = kategori)) +
geom_point() +
scale_color_brewer(palette = "Set1")
Line Plot
Line plot dasar
ggplot(data, aes(x = tanggal, y = nilai)) +
geom_line()
02 Jenis-jenis Plot Dasar
Line plot dengan points
ggplot(data, aes(x = tanggal, y = nilai)) +
geom_line() +
geom_point()
Visualisasi Bar Plot R
Bar plot sederhana
Data dengan ggplot(data, aes(x = kategori, y = nilai)) +
geom_bar(stat = "identity")
ggplot2 Bar plot dengan warna
ggplot(data, aes(x = kategori, y = nilai, fill = grup)) +
geom_bar(stat = "identity", position = "dodge")
Histogram R
Histogram Dasar
ggplot(data, aes(x = nilai)) +
geom_histogram()
Histogram dengan customisasi
ggplot(data, aes(x = nilai)) +
geom_histogram(bins = 30, fill = "blue", alpha = 0.5)
03 Customisasi Plot
Labels dan Titles
ggplot(data, aes(x = x_var, y = y_var)) +
geom_point() +
labs(
Visualisasi title = "Judul Plot",
subtitle = "Subjudul",
Penggunaan:
- Histogram: Distribusi frekuensi data
- Density Plot: Estimasi distribusi probabilitas
- Box Plot: Statistik lima angka (min, Q1, median, Q3, max) dan outliers
Panduan Pemilihan Plot
Berdasarkan Tipe Data
Data Kategorikal
(Nominal/Ordinal)
Penggunaan:
- Bar Plot: Frekuensi atau jumlah per kategori
- Pie Chart: Proporsi relatif (gunakan hanya jika kategori sedikit)
Panduan Pemilihan Plot
Berdasarkan Tipe Data
Hubungan Antar
Variabel
Numerik vs Numerik
Scatter Plot
ggplot(data, aes(x = nilai1, y = nilai2)) +
geom_point()
Line Plot (untuk data time series)
ggplot(data, aes(x = waktu, y = nilai)) +
geom_line()
Scatter Plot dengan Trend Line
ggplot(data, aes(x = nilai1, y = nilai2)) +
geom_point() +
geom_smooth(method = "lm")
Penggunaan:
- Scatter Plot: Hubungan/korelasi antara dua variabel numerik
- Line Plot: Tren waktu atau sequence
- Trend Line: Menunjukkan pola hubungan linear
Panduan Pemilihan Plot
Berdasarkan Tipe Data
Hubungan Antar
Variabel
Kategorikal vs Numerik
Box Plot
ggplot(data, aes(x = kategori, y = nilai)) +
geom_boxplot()
Violin Plot
gggplot(data, aes(x = kategori, y = nilai)) +
geom_violin()
Bar Plot dengan Error Bars
gggplot(data, aes(x = kategori, y = nilai)) +
stat_summary(fun = mean, geom = "bar") +
stat_summary(fun.data = mean_se, geom = "errorbar", width = 0.2)
Penggunaan:
- Box Plot: Distribusi nilai numerik per kategori
- Violin Plot: Distribusi density per kategori
- Bar Plot + Error Bars: Rata-rata dan variasi per kategori
Panduan Pemilihan Plot
Berdasarkan Tipe Data
Hubungan Antar
Variabel
Kategorikal vs Kategorikal
Stacked Bar Plot
ggplot(data, aes(x = kategori1, fill = kategori2)) +
geom_bar(position = "stack")
Grouped Bar Plot
ggplot(data, aes(x = kategori1, fill = kategori2)) +
geom_bar(position = "dodge")
Heat Map
ggplot(data, aes(x = kategori1, y = kategori2)) +
geom_tile(aes(fill = frekuensi))
Penggunaan:
-Stacked Bar: Komposisi dalam kategori
- Grouped Bar: Perbandingan antar kategori
- Heat Map: Frekuensi atau intensitas hubungan
Panduan Pemilihan Plot
Berdasarkan Tipe Data
Multi-Variabel
Tiga Variabel
Scatter Plot dengan Warna
ggplot(data, aes(x = nilai1, y = nilai2, color = kategori)) +
geom_point()
Bubble Plot
ggplot(data, aes(x = nilai1, y = nilai2, size = nilai3)) +
geom_point(alpha = 0.6)
Faceted Plots
ggplot(data, aes(x = nilai1, y = nilai2)) +
geom_point() +
facet_wrap(~kategori)
Penggunaan:
- Scatter + Warna: Hubungan dua variabel numerik dengan kategori
- Bubble Plot: Tiga variabel numerik
- Faceted Plots: Membagi plot berdasarkan kategori