Data diinput dari Microsoft excel dengan syntax sebagai berikut
setwd("D:/APK/Tugas_R")
data <- read_excel("JumlahKasusdanKorban.xlsx")
head(data)
## # A tibble: 6 × 5
## `Tempat Kejadian` `Jumlah Kasus` `Jumlah Korban` `Jenis Kekerasan` Jumlah
## <chr> <dbl> <dbl> <chr> <dbl>
## 1 Rumah Tangga 2663 2848 Fisik 1538
## 2 Tempat Kerja 71 71 Psikis 1429
## 3 Lainnya 984 1029 Seksual 1890
## 4 Sekolah 224 257 Eksploitasi 63
## 5 Fasilitas Umum 362 399 Trafficking 84
## 6 Lembaga Pendidikan Ki… 4 6 Penelantaran 386
Data ini bersumber dari https://kekerasan.kemenpppa.go.id/ringkasan.
data <- na.omit(data)
Dari data tersebut akan disajikan visualisasi data dalam bentuk Pie Chart. berikut terlampir hasil visualisasi datanya:
pie_chart <- ggplot(data, aes(x = "", y = Jumlah, fill = `Jenis Kekerasan`)) +
geom_bar(stat = "identity", width = 1) +
coord_polar("y", start = 0) +
theme_minimal() +
labs(title = "Distribusi Kasus Berdasarkan Jenis kekerasan") +
theme(axis.text.x = element_blank())
pie_chart
Berdasarkan grafik di atas, kasus kekerasan didominasi oleh kekerasan seksual, lalu diikuti oleh kekerasan fisik, psikis, dan penelantaran. Sementara itu, eksploitasi dan trafficking memiliki jumlah paling sedikit, namun tetap penting untuk diperhatikan karena dampaknya yang sangat serius.
Dari data tersebut akan disajikan visualisasi data dalam bentuk Bar Chart. berikut terlampir hasil visualisasi datanya:
Berdasarkan grafik di atas menunjukkan bahwa Kasus Kekerasan di Rumah Tangga memiliki presentase jumlah kasus dan jumlah korban terbanyak. dalam satu kasus kekerasan itu bisa terdapat lebih dari 1 korban. Sedangkan untuk Kasus Kekerasan di Lembaga Pendidikan Kilat memiliki presentase jumlah kasus dan jumlah korban terendah. Selain itu, data juga menunjukkan bahwa dalam satu kasus kekerasan, sering kali terdapat lebih dari satu korban
Dari data tersebut akan disajikan visualisasi data dalam bentuk Dot Plot. berikut terlampir hasil visualisasi datanya:
dot_plot <- ggplot(data, aes(x = `Jumlah Kasus`, y = `Jumlah Korban`)) +
geom_point(color = "blue", size = 3) +
theme_minimal() +
labs(title = "Dot Plot: Jumlah Kasus vs Jumlah Korban", x = "Jumlah Kasus", y = "Jumlah Korban")
dot_plot
Visualisasi di atas menunjukkan bahwa seiring dengan meningkatnya jumlah kasus, jumlah korban juga ikut meningkat. Beberapa titik pada grafik memperlihatkan jumlah korban yang jauh lebih banyak dibandingkan jumlah kasus, yang mengindikasikan bahwa dalam satu kasus bisa ada lebih dari satu korban.
Dari data tersebut akan disajikan visualisasi data dalam bentuk Histogram. berikut terlampir hasil visualisasi datanya:
histogram <- ggplot(data, aes(x = `Jumlah Kasus`)) +
geom_histogram(binwidth = 500, fill = "blue", color = "black", alpha = 0.7) +
theme_minimal() +
labs(title = "Histogram: Distribusi Jumlah Kasus", x = "Jumlah Kasus", y = "Frekuensi")
histogram
Grafik Histogram ini menunjukkan bahwa sebagian besar kasus berada di angka yang rendah, sementara ada beberapa lonjakan dengan jumlah kasus yang jauh lebih tinggi. Frekuensi tertinggi terjadi di kategori dengan kasus kecil, sedangkan kasus besar jarang muncul. Pola ini mengindikasikan distribusi yang tidak merata, dengan adanya beberapa nilai ekstrem (outlier) yang bisa jadi dipengaruhi oleh faktor tertentu. Secara keseluruhan, histogram ini menggambarkan bahwa meskipun sebagian besar kasus relatif sedikit, ada beberapa kejadian dengan jumlah yang sangat tinggi yang perlu diperhatikan lebih lanjut.
Dari data tersebut akan disajikan visualisasi data dalam bentuk Boxplot. berikut terlampir hasil visualisasi datanya:
boxplot_data <- ggplot(data, aes(y = `Jumlah Kasus`, x = "", fill = "Jumlah Kasus")) +
geom_boxplot(alpha = 0.6) +
theme_minimal() +
labs(title = "Boxplot: Variasi Jumlah Kasus", y = "Jumlah Kasus", x = "")
boxplot_data
Berdasarkan Visualisasi Boxplot di atas, menunjukkan bahwa jumlah kasus bervariasi cukup luas, dengan sebagian besar data berada di kisaran rendah hingga menengah. Garis median yang lebih dekat ke bagian bawah kotak menunjukkan bahwa sebagian besar kasus cenderung lebih kecil, sementara ada beberapa yang lebih besar. Selain itu, ada satu outlier yang jumlahnya jauh lebih tinggi dari yang lain, menandakan adanya kejadian luar biasa yang tidak umum. Secara keseluruhan, grafik ini menunjukkan bahwa mayoritas kasus tersebar dalam kisaran tertentu, tetapi ada satu kasus yang sangat tinggi dibandingkan dengan yang lain.
Dari data tersebut akan disajikan visualisasi data dalam bentuk Density Plot. berikut terlampir hasil visualisasi datanya:
density_plot <- ggplot(data, aes(x = `Jumlah Korban`, fill = "Jumlah Korban")) +
geom_density(alpha = 0.5) +
theme_minimal() +
labs(title = "Density Plot: Distribusi Jumlah Korban", x = "Jumlah Korban", y = "Density")
density_plot
Berdasarkan visualisasi di atas, distribusi jumlah korban tampak tidak merata, dengan kepadatan tertinggi pada jumlah korban yang rendah dan semakin menurun seiring bertambahnya jumlah korban. Grafik ini menunjukkan penurunan tajam setelah puncak awal, namun ada sedikit peningkatan pada kisaran jumlah korban yang lebih tinggi, yang menunjukkan adanya beberapa kejadian dengan jumlah korban yang cukup besar. Secara keseluruhan, distribusi ini cenderung skewed ke kanan, yang berarti sebagian besar data terkonsentrasi di angka yang lebih kecil, namun ada beberapa kasus dengan jumlah korban yang jauh lebih tinggi, yang mungkin merupakan outlier atau kejadian khusus.
Berikut adalah rata rata dari data Jumlah Kasus
mean(data$`Jumlah Kasus`)
## [1] 718
Berikut adalah Median dari data Jumlah kasus
median(data$`Jumlah Kasus`)
## [1] 293
Berikut adalah Modus dari data Jumlah jenis kekerasan
modus <- function(x){
uniqx <- unique(x)
uniqx [which.max(tabulate(match(x,uniqx)))]
}
modus(data$Jumlah)
## [1] 1538
Berikut adalah quartil 1 dan quartil 3 dari data Jumlah korban
jumlah_korban <- data$`Jumlah Korban`
q1 <- quantile(jumlah_korban, 0.25)
q3 <- quantile(jumlah_korban, 0.75)
print(q1)
## 25%
## 117.5
print(q3)
## 75%
## 871.5
Berikut adalah range dari data Jumlah korban
print(max(data$`Jumlah Korban`)-min(data$`Jumlah Korban`))
## [1] 2842
Berikut adalah varians dari data Jumlah Korban
var(data$`Jumlah Korban`)
## [1] 1171651
Berikut adalah standar deviasi dari data Jumlah korban
sd(data$`Jumlah Korban`)
## [1] 1082.428