title: “Tugas Data Science” author : “Dinny Silviani” date : “2025-05-15” output: html_document —
Produk Domestik Bruto merupakan indikator utama yang digunakan untuk mengukur tingkat pertumbuhan dan kesehatan ekonomi suatu negara. GDP mencerminkan total nilai barang dan jasa yang dihasilkan dalam suatu negara selama periode tertentu, dan menjadi tolok ukur penting dalam mengevaluasi kinerja ekonomi serta menentukan arah kebijakan fiskal dan moneter.
Dalam era digital dengan ketersediaan data ekonomi yang melimpah, metode Exploratory Data Analysis (EDA) menjadi alat penting untuk memahami pola, tren, dan anomali dalam data GDP. EDA memungkinkan untuk menggali informasi awal dari data tanpa asumsi statistik yang ketat, sehingga dapat memberikan gambaran yang komprehensif mengenai dinamika pertumbuhan ekonomi, perbandingan antar GDP, Inflasi dan Pengangguran disetiap waktu.
Dengan melakukan EDA secara menyeluruh, hasil analisis dapat digunakan sebagai pijakan awal dalam pengambilan keputusan kebijakan ekonomi, perencanaan pembangunan nasional, serta penelitian lebih lanjut terkait faktor-faktor yang memengaruhi pertumbuhan ekonomi. Berikut Data Ekonomi Indonesia selama 10 tahun
data <- read.csv2("/Users/mbpro/Documents/data_ekonomi.csv")
head(data)
## Negara Tahun GDP Inflasi Pengangguran
## 1 Indonesia 2004 5.0 6.1 7.3
## 2 Indonesia 2005 5.7 10.5 7.9
## 3 Indonesia 2006 5.5 13.1 7.6
## 4 Indonesia 2007 6.3 6.4 8.1
## 5 Indonesia 2008 6.0 10.2 7.2
## 6 Indonesia 2009 4.6 4.4 6.1
library(ggplot2)
library(dplyr)
library(moments)
library(patchwork)
summary(data)
## Negara Tahun GDP Inflasi
## Length:20 Min. :2004 Min. :-2.100 Min. :-2.100
## Class :character 1st Qu.:2009 1st Qu.: 5.000 1st Qu.: 4.175
## Mode :character Median :2014 Median : 5.150 Median : 5.200
## Mean :2014 Mean : 4.960 Mean : 5.605
## 3rd Qu.:2018 3rd Qu.: 5.775 3rd Qu.: 6.400
## Max. :2023 Max. : 6.300 Max. :13.100
## Pengangguran
## Min. :3.300
## 1st Qu.:3.950
## Median :4.450
## Mean :5.165
## 3rd Qu.:6.375
## Max. :8.100
ggplot(data, aes(x = Tahun, y = GDP)) +
geom_line()
ggplot(data, aes(x = GDP)) +
geom_histogram(fill = "steelblue", bins = 30) +
labs(title = "Histogram GDP", x = "GDP", y = "Frekuensi") +
theme_minimal()
#Gambar diatas merupakan visualisasi time series dalam bentuk line chart (grafik garis) yang mana secara umum, GDP cenderung berfluktuasi tetapi tetap berada di atas 0, yang menunjukkan pertumbuhan positif. Terdapat penurunan tajam sekitar tahun 2020, yang kemungkinan besar menunjukkan dampak pandemi Covid-19 terhadap ekonomi (GDP negatif), setelah 2020 GDP terlihat naik menandakan adanya pemulihan ekonomi.
ggplot(data, aes(y = GDP)) +
geom_boxplot(fill = "lightgreen") +
labs(title = "Boxplot GDP")
library(ggplot2)
library(ggplot2)
library(ggplot2)
ggplot(data, aes(x = Negara, y = GDP)) +
geom_violin(fill = "skyblue", color = "black") +
labs(title = "Violin Plot GDP per Negara",
x = "Negara", y = "GDP") +
theme_minimal()
#Menunjukkan distribusi sebaran nilai GDP per negara, lebar area diatas menunjukkan bahwa kepadatan data semakin lebar, semakin banyak data diarea tersebut. Violin plot terlihat lebih informatif dibanding boxplot dalam melihat bentuk distribusi.
ggplot(data, aes(x = Inflasi)) +
geom_histogram(fill = "orange", bins = 20) +
labs(title = "Histogram Inflasi", x = "Inflasi", y = "Frekuensi") +
theme_minimal()
#Dari diatas mayoritas nilai inflasi berada di kisaran 3% - 6% karena terlihat paling banyak frekuensi tinggi di area ini. Ada beberapa nilai inflasi yang cukup tinggi sekitar 10%, tetapi jumlahnya jarang. Ada satu atau dua tahun dengan deflasi (inflasi negatif).
ggplot(data, aes(x = Tahun, y = Inflasi)) +
geom_boxplot(fill = "tomato", color = "black") +
labs(title = "Boxplot Inflasi per Tahun",
x = "Tahun",
y = "Inflasi") +
theme_minimal()
## Warning: Continuous x aesthetic
## ℹ did you forget `aes(group = ...)`?
#Boxplot menampilkan distribusi nilai inflasi dari tahun ke tahun. Kotak merah menunjukkan rentang antar kuartil (Q1-Q3), garis di dalam kotak adalah median inflasi. Garis menunjukkan rentang data yang masih dalam 1,5xIQR dari kuartil. Titik diluar whisker adalah outlier, nilai inflasi yang jauh lebih rendah atau lebih tinggi dari mayoritas data. Kesimpulannya bahwa inflasi memiliki variasi yang cukup stabil dari tahun ke tahun.
ggplot(data, aes(x = Tahun, y = Pengangguran, fill = Negara)) +
geom_bar(stat = "identity") +
labs(title = "Total Pengangguran per Tahun per Negara",
x = "Tahun",
y = "Jumlah Pengangguran") +
theme_minimal()
#Indonesia mengalami perbaikan kondisi ketenagakerjaan dalam jangka panjang, tercermin dari penurunan tingkat pengangguran. Fluktuasi dari tahun ke tahun menunjukkan adanya pengaruh faktor ekonomi eksternal atau domestik. Jumlah pengangguran cenderung menurun dari awal 2000an hingga 2022, puncaknya sekitar tahun 2005-2006, mulai stabil dan perlahan menurun.
ggplot(data, aes(x = Tahun, y = Pengangguran, fill = Negara)) +
geom_bar(stat = "identity") +
geom_text(aes(label = Pengangguran),
position = position_stack(vjust = 0.5),
color = "white", size = 3) +
labs(title = "Stacked Bar Chart Pengangguran",
x = "Tahun",
y = "Pengangguran") +
theme_minimal()
#Data Pengangguran Indonesia dalam bentuk stacked bar chart yang mana hasilnya yaitu menunjukan bahwa adanya penurunan pengangguran disetiap tahun, menunjukkan perubahan yang positif.
library(corrplot)
## corrplot 0.95 loaded
# Ambil kolom numerik saja
num_data <- data[, sapply(data, is.numeric)]
# Hitung korelasi
cor_matrix <- cor(num_data, use = "complete.obs")
# Tampilkan heatmap korelasi
corrplot(cor_matrix, method = "color", type = "upper",
tl.col = "black", tl.srt = 45,
col = colorRampPalette(c("red", "white", "blue"))(200),
title = "Heatmap Korelasi", mar = c(0,0,1,0))
#Warna Merah : menunjukkan korelasi positif yang tinggi (mendekati 1)
#Warna Biru : menunjukkan korelasi negatif yang tinggi (mendekati -1)
#Warna Putih : mendekati nol -> tidak ada hubungan yang kuat.
##Beberapa Hubungan yang terlihat:
#1. GDP vs Pengangguran, korelasi negatif kuat ketika GDP meningkat, tingkat pengangguran cenderung menurun, ini masuk akal secara ekonomi, pertumbuhan ekonomi biasanya menciptakan lapangan pekerjaan
#2. Inflasi vs Pengangguran, korelasi negatif sedang, ketika inflasi naik, pengangguran cenderung turun. Selaras dengan kurva Philips, ada trade-off jangka pendek antara inflasi dan penangguran.
#3. GDP vs Inflasi, korelasi positif, saat GDP meningkat, inflasi juga bisa ikut naik, misalnya karena permintaan meningkat dalam ekonomi yang tumbuh.
#4. Tahun vs GDO, korelasi positif tinggi, GDP cenderung meningkat dari waktu ke waktu (tren pertumbuhan ekonomi)
library(ggplot2)
ggplot(data, aes(x = Negara)) +
geom_bar(fill = "steelblue") +
labs(title = "Jumlah Observasi per Negara", x = "Negara", y = "Frekuensi") +
theme_minimal()
#Grafik diatas menjelaskan bahwa seua data observasi dalam data set berasal dari satu negara saja yaitu Indonesia, semua hasil analisis korelasi, tren tahunan, pengangguran, GDP dan inflasi yaitu hanya negara Indonesia
data_z <- as.data.frame(scale(data[, c("GDP", "Inflasi", "Pengangguran")]))
pairs(data[, c("GDP", "Inflasi", "Pengangguran")],
main = "Scatterplot Matrix",
pch = 21,
bg = "lightblue")
#Scatterplot Matrix yang menampilkan hubungan visual antara tiga variabel GDP, Inflasi dan Pengangguran
##1. GDP vs Inflasi, titik-titik terlihat agak tersebar dan tidak membentuk pola linier yang jelas. Ini menunjukkan hubungan lemah atau tidak ada hubungan linier langsung antara GDP dan Inflasi dalam data ini.
##2. GDP vs Pengangguran, titik-titik cenderung membentuk pola menurun, menunjukkan hubungan negatif antara GDP dan pengangguran, ketika GDP meningkat, pengangguran cenderung menurun. Pertumbuhan ekonomi naik biasanya diiringi oleh penciptaan lapangan kerja (pengangguran turun)
##3. Inflasi vs Pengangguran, pola terlihat menyebar tapi cenderung negatif, ini mengarah terhadap hubungan trade-off seperti kurva Philips walau korelasinya tampak tidak terlalu kuat.
clean_data <- na.omit(data)
library(tidyr)
library(dplyr)
# Pivot data ke long format
data_long <- data %>%
select(GDP, Inflasi, Pengangguran) %>%
pivot_longer(cols = everything(), names_to = "Variabel", values_to = "Nilai")
# Plot gabungan
ggplot(data_long, aes(x = Nilai, color = Variabel)) +
stat_ecdf(geom = "step", size = 1) +
labs(title = "ECDF Plot - GDP, Inflasi, Pengangguran",
x = "Nilai",
y = "ECDF") +
theme_minimal()
## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
## ℹ Please use `linewidth` instead.
## This warning is displayed once every 8 hours.
## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was
## generated.