# =========================
# DATASET PENGANGGURAN INDONESIA
# =========================

# Membuat dataset
data <- data.frame(
  Provinsi = c("DKI Jakarta","Jawa Barat","Jawa Tengah","Jawa Timur","Banten",
               "Bali","Sumatera Utara","Sumatera Barat","Kalimantan Timur","Sulawesi Selatan"),
  Pulau = c("Jawa","Jawa","Jawa","Jawa","Jawa",
            "Bali","Sumatera","Sumatera","Kalimantan","Sulawesi"),
  TPT = c(6.53,7.44,5.13,4.88,7.97,3.73,6.16,5.75,5.31,4.51),
  Penduduk_Juta = c(10.6,49.4,36.7,41.1,12.7,4.4,15.1,5.6,3.8,9.2)
)

# Melihat data
print(data)
##            Provinsi      Pulau  TPT Penduduk_Juta
## 1       DKI Jakarta       Jawa 6.53          10.6
## 2        Jawa Barat       Jawa 7.44          49.4
## 3       Jawa Tengah       Jawa 5.13          36.7
## 4        Jawa Timur       Jawa 4.88          41.1
## 5            Banten       Jawa 7.97          12.7
## 6              Bali       Bali 3.73           4.4
## 7    Sumatera Utara   Sumatera 6.16          15.1
## 8    Sumatera Barat   Sumatera 5.75           5.6
## 9  Kalimantan Timur Kalimantan 5.31           3.8
## 10 Sulawesi Selatan   Sulawesi 4.51           9.2
# =========================
# VISUALISASI
# =========================

# PIE CHART
pie(table(data$Pulau),
    main="Distribusi Provinsi Berdasarkan Pulau")

# BAR CHART
barplot(data$TPT,
        names.arg=data$Provinsi,
        main="Tingkat Pengangguran Terbuka (%)",
        las=2)

# HISTOGRAM
hist(data$TPT,
     main="Distribusi Tingkat Pengangguran",
     xlab="TPT (%)")

# DENSITY PLOT
plot(density(data$TPT),
     main="Density Plot TPT")

# BOXPLOT
boxplot(data$TPT,
        main="Boxplot Tingkat Pengangguran")

# =========================
# STATISTIK DESKRIPTIF
# =========================

# Fungsi untuk modus
modus <- function(x) {
  ux <- unique(x)
  ux[which.max(tabulate(match(x, ux)))]
}

# Mean
mean_tpt <- mean(data$TPT)
mean_tpt
## [1] 5.741
# Median
median_tpt <- median(data$TPT)
median_tpt
## [1] 5.53
# Modus
modus_tpt <- modus(data$TPT)
modus_tpt
## [1] 6.53
# Kuartil (Q1, Median, Q3)
quartiles <- quantile(data$TPT, probs=c(0.25,0.5,0.75))
quartiles
##    25%    50%    75% 
## 4.9425 5.5300 6.4375
# Range
range_tpt <- range(data$TPT)
range_tpt
## [1] 3.73 7.97
# Variansi
var_tpt <- var(data$TPT)
var_tpt
## [1] 1.723677
# Standar Deviasi
sd_tpt <- sd(data$TPT)
sd_tpt
## [1] 1.312889