Project ini menggunakan dataset berjudul “Suicide Rates Overview 1985 to 2016” yang diperoleh dari situs Kaggle. Dataset berisi informasi mengenai demografi dan socio-ecomonic dari fenomena bunuh diri di beberapa negara dalam rentang waktu 1985 hingga 2016. Tujuan utama dari project ini adalah untuk mengetahui beberapa negara yang memiliki kasus bunuh diri bernilai signifikan serta melakukan kajian lebih dalam mengenai demografi negara-negara tersebut.
Project ini akan menggunakan package tambahan diluar base r package, yaitu ggplot2 untuk visualisasi dan dplyr untuk pre-processing data.
Langkah pertama yang dilakukan adalah memasukkan dataset ke dalam environment R menggunakan fungsi read.csv() dan dilanjutkan dengan inspeksi struktur dataset menggunakan fungsi str() :
## 'data.frame': 27820 obs. of 12 variables:
## $ country : Factor w/ 101 levels "Albania","Antigua and Barbuda",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ year : int 1987 1987 1987 1987 1987 1987 1987 1987 1987 1987 ...
## $ sex : Factor w/ 2 levels "female","male": 2 2 1 2 2 1 1 1 2 1 ...
## $ age : Factor w/ 6 levels "15-24 years",..: 1 3 1 6 2 6 3 2 5 4 ...
## $ suicides_no : int 21 16 14 1 9 1 6 4 1 0 ...
## $ population : int 312900 308000 289700 21800 274300 35600 278800 257200 137500 311000 ...
## $ suicides.100k.pop : num 6.71 5.19 4.83 4.59 3.28 2.81 2.15 1.56 0.73 0 ...
## $ country.year : Factor w/ 2321 levels "Albania1987",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ HDI.for.year : num NA NA NA NA NA NA NA NA NA NA ...
## $ gdp_for_year.... : Factor w/ 2321 levels "1,002,219,052,968",..: 727 727 727 727 727 727 727 727 727 727 ...
## $ gdp_per_capita....: int 796 796 796 796 796 796 796 796 796 796 ...
## $ generation : Factor w/ 6 levels "Boomers","G.I. Generation",..: 3 6 3 2 1 2 6 1 2 3 ...
## [1] "15-24 years" "25-34 years" "35-54 years" "5-14 years" "55-74 years"
## [6] "75+ years"
## [1] 1985 2016
Melalui inspeksi dataset, ditemukan bahwa dataset memiliki 27.820 observasi yang dijelaskan dalam 12 variable. Data tersebut mencakup catatan dari 101 negara dalam rentang waktu dari tahun 1985 hingga 2016.
Terdapat penamaan yang menggunakan "_" dana ada juga yang menggunakan “.” Untuk kemudahan penulisan code, dilakukan penamaan ulang beberapa variable dengan menggunakan fungsi rename() dari package dplyr:
dataset <- rename(dataset, suicides_100k_pop = "suicides.100k.pop")
dataset <- rename(dataset, HDI_for_year = "HDI.for.year")
dataset <- rename(dataset, country_year = "country.year")
dataset <- rename(dataset, gdp_for_year = "gdp_for_year....")
dataset <- rename(dataset, gdp_per_capita = "gdp_per_capita....")
str(dataset)## 'data.frame': 27820 obs. of 12 variables:
## $ country : Factor w/ 101 levels "Albania","Antigua and Barbuda",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ year : int 1987 1987 1987 1987 1987 1987 1987 1987 1987 1987 ...
## $ sex : Factor w/ 2 levels "female","male": 2 2 1 2 2 1 1 1 2 1 ...
## $ age : Factor w/ 6 levels "15-24 years",..: 1 3 1 6 2 6 3 2 5 4 ...
## $ suicides_no : int 21 16 14 1 9 1 6 4 1 0 ...
## $ population : int 312900 308000 289700 21800 274300 35600 278800 257200 137500 311000 ...
## $ suicides_100k_pop: num 6.71 5.19 4.83 4.59 3.28 2.81 2.15 1.56 0.73 0 ...
## $ country_year : Factor w/ 2321 levels "Albania1987",..: 1 1 1 1 1 1 1 1 1 1 ...
## $ HDI_for_year : num NA NA NA NA NA NA NA NA NA NA ...
## $ gdp_for_year : Factor w/ 2321 levels "1,002,219,052,968",..: 727 727 727 727 727 727 727 727 727 727 ...
## $ gdp_per_capita : int 796 796 796 796 796 796 796 796 796 796 ...
## $ generation : Factor w/ 6 levels "Boomers","G.I. Generation",..: 3 6 3 2 1 2 6 1 2 3 ...
Setelah dataset dibenahi, selanjutnya penulis ingin meneliti dataset berdasarkan jumlah korban bunuh diri yang ditercantum dalam variable suicides_no. Variable suicides_no akan agregat kan berdasarkan negara tempat kejadiannya dengan fungsi aggregate.data.frame() seperti berikut:
suicide.agg <- aggregate.data.frame(list(suicides_no = dataset$suicides_no),
by = list(country = dataset$country),
FUN = sum)
head(suicide.agg,
n=5)Dari hasil aggregat, dilakukan visualisasi data untuk proporsi jumlah korban berdasarkan asal negaranya dengan fungsi ggplot():
ggplot(suicide.agg, aes(x = "", y = suicides_no/sum(suicides_no)*100, fill = reorder(country, suicides_no))) +
geom_col(width = 1, color = "black") +
coord_polar("y", start=0)+
theme(legend.position = "none")+
labs(title="Suicides Number Percentages by Country",
x=NULL,
y=NULL)Dari pie chart ditemukan bahwa 50% jumlah korban bunuh diri berasal dari 4 negara dengan jumlah korban terbanyak. Untuk mengetahui keempat negara tersebut maka selanjutnya akan divisualisasikan dalam bentuk barchart. Untuk mempermudah pembacaan barchart, negara-negara yang ditampilkan dalam barchart hanya negara-negara yang memiliki nilai suicide_no di atas rata-rata saja:
library(ggplot2)
ggplot(suicide.agg[suicide.agg$suicides_no >= mean(suicide.agg$suicides_no),],
aes(x=reorder(country, suicides_no), y=suicides_no, fill= country))+
geom_col()+
geom_text(aes(label = suicides_no))+
theme(legend.position = "none")+
labs(title="Suicides Number by Country",
x=NULL,
y=NULL)+
coord_flip()Keempat negara dengan jumlah suicides_no tertinggi adalah Federasi Rusia, Amerika Serikat, Jepang, dan Prancis. Selanjutnya akan dibuat subset yang hanya berisi keempat negara tersebut:
dataset.hi4 <- dataset[dataset$country == "Russian Federation"|
dataset$country == "United States"|
dataset$country == "Japan"|
dataset$country == "France",]
unique(dataset.hi4$country)## [1] France Japan Russian Federation
## [4] United States
## 101 Levels: Albania Antigua and Barbuda Argentina Armenia ... Uzbekistan
Dari hasil subset keempat negara terpilih akan dibuat lagi sebuah subset baru yang berisi akumulasi nilai suicides_no berdasarkan variable country, age, dan year seperti berikut:
hi4.agg <- aggregate.data.frame(list(suicides_no = dataset.hi4$suicides_no),
by = list(country = dataset.hi4$country,
age= dataset.hi4$age,
year= dataset.hi4$year),
FUN = sum)Subset hasil aggregat di atas selanjutnya divisualisasikan dalam bentuk bar chart untuk mengetahui susunan data berdasarkan tahunnya:
ggplot(hi4.agg, aes(x=year, y=suicides_no))+
geom_col()+
facet_wrap(~country,nrow = 3)+
theme(legend.position = "none")+
labs(title="Suicide Numbers by Years",
x=NULL,
y=NULL)Terlihat bahwa pada negara Federasi Rusia dan juga Prancis terdapat data tahun kasus yang kosong. Untuk mengetahui tahun berapa saja yang tidak tedapat data, penulis menggunakan fungsi table() sebagai berikut:
dataset.year <- as.data.frame(table(dataset.hi4$year))
dataset.year <- dataset.year[order(dataset.year$Freq),]
head(dataset.year, n=10)## [1] 48
Dari hasil di atas, ditemukan bahwa tahun 1985-1988 dan 2015 memiliki frekuensi kemunculan data di bawah nilai median (48). Supaya perbandingan keempat negara dapat dilakukan, maka selanjutnya data yang akan digunakan hanya data dalam selang tahun 1989 hingga 2014:
dataset.hi4 <- dataset.hi4[dataset.hi4$year >= 1989 &
dataset.hi4$year <= 2014,]
hi4.agg <- aggregate.data.frame(list(suicides_no = dataset.hi4$suicides_no),
by = list(country = dataset.hi4$country,
age= dataset.hi4$age,
year= dataset.hi4$year),
FUN = sum)Data hasil subset di atas selanjutnya divisualisasikan dengan menggunakan fungsi ggplot() dan dilengkapi dengan layer geom_area dan geom_smooth seperti berikut:
ggplot(hi4.agg, aes(x=year, y=suicides_no))+
geom_area(aes(fill=reorder(age, suicides_no)), colour="black", lty = 3)+
facet_wrap(~country, nrow=1)+
scale_x_continuous(breaks = seq(1990, 2015, by = 8))+
geom_smooth(method="lm", colour="red")+
labs(fill="Age Intervals",
title="Suicide Numbers by Years (From 1989 to 2014)",
x=NULL,
y=NULL)+
theme(legend.position = "bottom",panel.spacing = unit(1, "lines"))Dapat dilihat bahwa di keempat negara, rentang umur 35-54 tahun menjadi rentang umur dengan nilai kejadian bunuh diri terbanyak yang disusul dengan rentang usia 55-74 tahun. Dari informasi tersebut dapat disebut juga kasus bunuh diri banyak terjadi di usia-usia yang mendekati usia pensiun. Sedangkan di sisi lain rentang usia 5-14 tahun menjadi rentang usia dengan jumlah kasus bunuh diri paling sedikit.
Keempat negara menunjukkan tren jumlah kasus bunuh diri yang berbeda. Untuk negara Prancis dan Federasi Rusia menunjukkan tren penurunan, sedangkan untuk Jepang dan Amerika serikat menunjukkan tren positif. Ditemukan juga lonjakan jumlah kasus bunuh diri yang signifikan di negara Jepang pada tahun 1998 dan di Federasi Rusia di sekitar tahun 1995.Untuk kejadian di Jepang hal ini disebabkan oleh resesi ekonomi tahun 98 (source: https://www.deseretnews.com/article/705545/Suicide-rate-in-Japan-surged-35-in-1998.html) sedangkan untuk Federasi Rusia disebabkan oleh bubarnya Uni Soviet(source: https://www.dailymail.co.uk/news/article-2052156/Nearly-million-Russians-committed-suicide-collapse-Soviet-Union.html).
Dari hasil pengolahan data, dapat disimpulkan bahwa:
50% kasus bunuh diri dalam dataset yang digunakan berasal dari negara Federasi Rusia, Amerika Serikat, Jepang, dan Prancis.
Rentang usia 35-54 tahun dan 55-74 tahun rentan akan kasus bunuh diri dilihat dari tingginya jumlah kasus di rentang usia tersebut.
Terjadi fenomena lonjakan jumlah kejadian bunuh diri di Jepang pada tahun 1998 akibat resesi ekonomi dan di Federasi Rusia pada tahun 1995 akibat bubarnya Uni Soviet.