Beberapa Libary yang perlu install sebagai berikut :
library(ggplot2)
library(readxl)
library(csvread)
library(ggthemes)
library(gridExtra)
Data diinput dari Microsoft excel dengan syntax sebagai berikut:
setwd("D:/")
rawData <- read.csv("quality_of_life_indices_by_country.csv")
filterByYear <- subset(rawData, Year == 2024)
filterByRank <- subset(filterByYear, Rank >= 73 & Rank <= 78)
data <- filterByRank
head(data)
## Rank Country Quality.of.Life.Index Purchasing.Power.Index Safety.Index
## 1400 73 Kazakhstan 98.4 36.8 54.1
## 1401 74 Thailand 97.7 32.9 62.1
## 1402 75 Indonesia 94.8 25.8 53.9
## 1403 76 Vietnam 92.7 32.5 57.8
## 1404 77 Philippines 85.9 25.9 57.2
## 1405 78 Egypt 83.8 15.2 52.7
## Health.Care.Index Cost.of.Living.Index Property.Price.to.Income.Ratio
## 1400 60.1 33.5 10.4
## 1401 77.2 36.0 26.5
## 1402 60.8 28.5 18.9
## 1403 60.8 30.8 23.7
## 1404 67.4 33.6 27.0
## 1405 47.5 29.1 16.2
## Traffic.Commute.Time.Index Pollution.Index Climate.Index Year
## 1400 35.8 73.6 39.8 2024
## 1401 39.0 75.5 67.6 2024
## 1402 43.0 67.4 64.0 2024
## 1403 29.1 83.8 71.2 2024
## 1404 43.1 72.5 60.8 2024
## 1405 48.1 82.8 92.0 2024
Dari data tersebut akan disajikan visualisasi data dalam bentuk Pie Chart. berikut terlampir hasil visualisasi datanya:
pie_chart <- ggplot(data, aes(x = "", fill = Country)) +
geom_bar(width = 1, stat = "count") +
coord_polar("y", start = 0) +
theme_minimal() +
labs(title = "Kualitas Hidup di Beberapa Negara Berkembang (2024)") +
theme(axis.text.x = element_blank()) +
scale_fill_brewer(palette = "Set3")
pie_chart
Dari data tersebut akan disajikan visualisasi data dalam bentuk Bar Chart. berikut terlampir hasil visualisasi datanya:
bar_chart <- ggplot(data, aes(x = Country, y = `Quality.of.Life.Index`, fill = Country)) +
geom_col() +
theme_minimal() +
labs(title = "Quality of Life Index by Country", x = "Country", y = "Quality of Life Index") +
theme(axis.text.x = element_text(angle = 45, hjust = 1))
bar_chart
Dari data tersebut akan disajikan visualisasi data dalam bentuk Dot Plot. berikut terlampir hasil visualisasi datanya:
dot_plot <- ggplot(data, aes(x = Safety.Index, y = Health.Care.Index)) +
geom_point(color = "blue", size = 3) +
theme_minimal() +
labs(title = "Dot Plot: Safety Index vs. Health Care Index", x = "Safety Index", y = "Health Care Index") +
geom_text(aes(label = Country), vjust = -0.5, hjust = 0.5)
dot_plot
Dari data tersebut akan disajikan visualisasi data dalam bentuk Boxplot. berikut terlampir hasil visualisasi datanya:
boxplot_data <- ggplot(data, aes(y = `Property.Price.to.Income.Ratio`)) +
geom_boxplot(fill = "steelblue", alpha = 0.6) +
theme_minimal() +
labs(title = "Boxplot: Property Price to Income Ratio", y = "Property Price to Income Ratio")
boxplot_data
Dari data tersebut akan disajikan visualisasi data dalam bentuk Density Plot. berikut terlampir hasil visualisasi datanya:
density_plot <- ggplot(data, aes(x = Pollution.Index)) +
geom_density(fill = "orange", alpha = 0.5) +
theme_minimal() +
labs(title = "Density Plot: Pollution Index", x = "Pollution Index", y = "Density")
density_plot
Dari data tersebut akan disajikan visualisasi data dalam bentuk deskriptif numerik berdasarkan “Quality of Life Index”, berikut terlampir hasil visualisasi datanya:
quality_of_life <- data$Quality.of.Life.Index
mean_quality <- mean(quality_of_life, na.rm = TRUE)
median_quality <- median(quality_of_life, na.rm = TRUE)
mode_quality <- as.numeric(names(which.max(table(quality_of_life))))
q1_quality <- quantile(quality_of_life, 0.25, na.rm = TRUE)
q3_quality <- quantile(quality_of_life, 0.75, na.rm = TRUE)
range_quality <- range(quality_of_life, na.rm = TRUE)
variance_quality <- var(quality_of_life, na.rm = TRUE)
sd_quality <- sd(quality_of_life, na.rm = TRUE)
stat_summary_df <- data.frame(
Statistic = c("Mean", "Median", "Mode", "Q1", "Q3", "Min", "Max", "Variance", "SD"),
Value = c(mean_quality, median_quality, mode_quality, q1_quality, q3_quality,
range_quality[1], range_quality[2], variance_quality, sd_quality)
)
print(stat_summary_df)
## Statistic Value
## 1 Mean 92.216667
## 2 Median 93.750000
## 3 Mode 83.800000
## 4 Q1 87.600000
## 5 Q3 96.975000
## 6 Min 83.800000
## 7 Max 98.400000
## 8 Variance 37.189667
## 9 SD 6.098333