library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.3.2
## Warning: package 'readr' was built under R version 4.3.3
## Warning: package 'lubridate' was built under R version 4.3.2
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr 1.1.3 ✔ readr 2.1.5
## ✔ forcats 1.0.0 ✔ stringr 1.5.0
## ✔ ggplot2 3.4.4 ✔ tibble 3.2.1
## ✔ lubridate 1.9.3 ✔ tidyr 1.3.0
## ✔ purrr 1.0.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag() masks stats::lag()
## ℹ Use the conflicted package (<http://conflicted.r-lib.org/>) to force all conflicts to become errors
library(ggplot2)
library(treemap)
## Warning: package 'treemap' was built under R version 4.3.3
library(treemapify)
## Warning: package 'treemapify' was built under R version 4.3.3
library(ggridges)
library(GGally)
## Warning: package 'GGally' was built under R version 4.3.2
## Registered S3 method overwritten by 'GGally':
## method from
## +.gg ggplot2
library(plotly)
## Warning: package 'plotly' was built under R version 4.3.2
##
## Attaching package: 'plotly'
##
## The following object is masked from 'package:ggplot2':
##
## last_plot
##
## The following object is masked from 'package:stats':
##
## filter
##
## The following object is masked from 'package:graphics':
##
## layout
Membaca Data
datasusenas <- read.csv("C:/Users/keyzh/Downloads/KOR.csv", header = TRUE, sep=",")
head(datasusenas)
## X URUT PSU SSU WI1 WI2 R101 R102 R105 NUINFORT R1701 R1702 R1703
## 1 0 500001 12448 123442 12435 123427 32 7 2 2 5 5 5
## 2 1 500002 31373 311039 31360 311024 32 72 1 1 1 1 1
## 3 2 500003 12092 119908 12079 119893 32 6 2 2 5 5 5
## 4 3 500004 31135 308689 31122 308674 32 72 1 2 5 5 5
## 5 4 500005 33988 336798 33975 336783 32 77 1 1 5 5 5
## 6 5 500006 34062 337531 34049 337516 32 77 1 1 5 5 5
## R1704 R1705 R1706 R1707 R1708 NUINFORT1 R1801 R1802 R1803 R1804 R1805 R1806
## 1 5 5 5 5 5 2 1 1 5 110 5 2
## 2 5 5 5 5 5 1 1 1 1 35 5 3
## 3 5 5 5 5 5 2 1 1 1 96 5 2
## 4 5 5 5 5 5 2 2 1 1 300 5 2
## 5 5 5 5 5 5 1 1 3 0 84 1 2
## 6 5 5 5 5 5 1 1 1 1 300 1 2
## R1807 R1808 R1809A R1809B R1809C R1809D R1809E R1810A R1810B R1811A R1811B
## 1 1 4 2 1 1 98 7 4 2 2 998
## 2 1 6 1 1 4 0 0 4 2 1 0
## 3 1 2 1 1 1 20 7 5 1 1 0
## 4 1 2 1 1 1 98 7 2 0 2 10
## 5 1 2 1 1 1 98 7 1 0 1 0
## 6 1 2 1 1 1 98 7 1 0 1 0
## R1812 R1813A R1813B R1813C R1813D R1813E R1814A R1814B R1815A R1815B R1815C
## 1 5 5 5 5 5 5 4 2 1 1 1
## 2 5 5 5 5 5 5 4 2 1 1 1
## 3 5 5 5 5 5 5 5 1 1 1 5
## 4 5 5 5 5 5 5 5 2 1 1 1
## 5 5 5 5 5 5 5 4 2 1 1 1
## 6 5 5 5 5 5 5 3 0 1 1 1
## R1816 R1816B1 R1816B2 R1816B3 R1817 R1901A R1901B R1901C R1901D R1901E R1901F
## 1 1 1 0 0 4 1 5 5 5 5 5
## 2 1 1 0 0 4 5 5 5 5 5 5
## 3 1 1 1 0 4 5 5 5 5 5 5
## 4 1 2 0 0 4 1 5 5 5 5 5
## 5 1 1 0 0 2 5 5 5 5 5 5
## 6 1 3 0 0 3 5 5 5 5 5 5
## R1901G R1901H R1901I R1901J R2001A R2001B R2001C R2001D R2001E R2001F R2001G
## 1 5 5 5 5 5 1 5 5 5 1 5
## 2 5 5 5 5 5 5 5 5 5 5 5
## 3 5 5 5 5 5 1 5 5 5 5 5
## 4 5 5 5 5 5 1 5 5 5 5 5
## 5 5 5 5 5 1 1 5 5 5 1 5
## 6 5 5 5 5 1 1 1 1 1 1 1
## R2001H R2001I R2001J R2001K R2001L R2001M R2002_A R2002_B R2002_C R2002_D
## 1 5 5 5 5 5 1 A
## 2 5 5 5 5 5 1 A
## 3 1 5 5 5 5 1 A
## 4 1 5 5 5 5 1 A
## 5 1 1 1 1 1 5
## 6 1 1 5 1 1 1 A
## R2101A R2101B R2101C R2201A2 R2201A3 R2201B2 R2201B3 R2201C2 R2201C3 R2201D2
## 1 2 0 2 1 1 5 0 5 0 5
## 2 1 2 0 5 0 5 0 5 0 5
## 3 1 1 0 5 0 5 0 5 0 5
## 4 1 1 0 5 0 5 0 5 0 5
## 5 1 2 0 5 0 5 0 5 0 1
## 6 4 0 0 5 0 5 0 5 0 5
## R2201D3 R2201E2 R2201E3 R2201F2 R2201F3 R2202 R2203 R2204A R2204B R2204C_A
## 1 0 5 0 5 0 2 1 1 4 A
## 2 0 5 0 5 0 1 5 0 0
## 3 0 5 0 5 0 5 5 0 0
## 4 0 5 0 5 0 5 5 0 0
## 5 1 5 0 5 0 5 5 0 0
## 6 0 5 0 5 0 5 5 0 0
## R2204C_B R2204C_C R2204C_D R2204C_E R2204C_F R2204C_G R2205A R2206A R2207
## 1 NA 5 5 1
## 2 NA 5 5 1
## 3 NA 5 5 1
## 4 NA 5 5 5
## 5 NA 5 5 5
## 6 NA 5 5 5
## R2208A2 R2208B2 R2208BI2 R2208C2 R2208D2 R2208EIB2 R2208EIIB2 R2208EIT2
## 1 5 0 0 0 0 0 0 0
## 2 5 0 0 0 0 0 0 0
## 3 5 0 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## R2208EIIT2 R2208EK2 R2208ENU2 R2208EIL2 R2208EIIL2 R2208ES2 R2208F2 R2208G2
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## R2208H2 R2208A3 R2208B3 R2208BI3 R2208C3 R2208D3 R2208EIB3 R2208EIIB3
## 1 0 5 0 0 0 0 0 0
## 2 0 5 0 0 0 0 0 0
## 3 0 5 0 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0
## R2208EIT3 R2208EIIT3 R2208EK3 R2208ENU3 R2208EIL3 R2208EIIL3 R2208ES3 R2208F3
## 1 0 0 0 0 0 0
## 2 0 0 0 0 0 0
## 3 0 0 0 0 0 0
## 4 0 0 0 0 0 0
## 5 0 0 0 0 0 0
## 6 0 0 0 0 0 0
## R2208G3 R2208H3 R2208A4 R2208B4 R2208BI4 R2208C4 R2208D4 R2208EIB4 R2208EIIB4
## 1 0 0 1 1 600000 3 1 200000 17
## 2 0 0 5 0 0 0 0 0 0
## 3 0 0 1 1 400000 2 1 240000 20
## 4 0 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0 0
## R2208EIT4 R2208EIIT4 R2208EK4 R2208ENU4 R2208EIL4 R2208EIIL4 R2208ES4
## 1 40000 16 DAGING AYAM 59 70000 2 KG
## 2 0 0 0 0 0
## 3 60000 36 KENTANG 13 100000 5 KG
## 4 0 0 0 0 0
## 5 0 0 0 0 0
## 6 0 0 0 0 0
## R2208F4 R2208G4 R2208H4 R2208A5 R2208B5 R2208BI5 R2208C5 R2208D5 R2208EIB5
## 1 1 1 1 5 0 0 0 0 0
## 2 0 0 0 1 1 600000 3 1 110000
## 3 1 5 1 5 0 0 0 0 0
## 4 0 0 0 0 0 0 0 0 0
## 5 0 0 0 0 0 0 0 0 0
## 6 0 0 0 0 0 0 0 0 0
## R2208EIIB5 R2208EIT5 R2208EIIT5 R2208EK5 R2208ENU5 R2208EIL5
## 1 0 0 0 0 0
## 2 10 26000 16 DAGING AYAM RAS 59 32000
## 3 0 0 0 0 0
## 4 0 0 0 0 0
## 5 0 0 0 0 0
## 6 0 0 0 0 0
## R2208EIIL5 R2208ES5 R2208F5 R2208G5 R2208H5 R2209A R2209B R2209C R2210A
## 1 0 0 0 0 5 5 5 5
## 2 1 KG 1 1 1 1 5 5 5
## 3 0 0 0 0 1 5 5 5
## 4 0 0 0 0 5 5 5 5
## 5 0 0 0 0 5 5 5 1
## 6 0 0 0 0 5 5 5 5
## R2210B1 R2210B2 R2210B3 R2210B4 R2210B5 R2211A R2211A1 R2211A2 R2211A3
## 1 5 5 5 5 5 1 600000 0 0
## 2 5 5 5 5 5 5 0 0 0
## 3 5 5 5 5 5 5 0 0 0
## 4 5 5 5 5 5 5 0 0 0
## 5 5 5 5 5 5 5 0 0 0
## 6 5 5 5 5 5 5 0 0 0
## R2211A4 R2211A5 R2211B R2211B1 R301 R302 R303 R304 R305 FWT
## 1 0 0 5 0 4 0 4 3 1 454.889101
## 2 0 0 5 0 2 0 2 2 0 172.376821
## 3 0 0 5 0 3 0 3 3 1 241.578661
## 4 0 0 5 0 7 1 6 5 1 93.673563
## 5 0 0 5 0 3 0 3 3 1 122.217556
## 6 0 0 5 0 2 0 2 2 0 7.638085
datasusenas %>%
filter(R2204B %in% 1:5) %>%
mutate(R2204B = ifelse(R2204B ==1, "Kantor pos", R2204B),
R2204B = ifelse(R2204B ==2, "ATM", R2204B),
R2204B = ifelse(R2204B ==3, "Kantor bank", R2204B),
R2204B = ifelse(R2204B ==4, "Agen bank", R2204B),
R2204B = ifelse(R2204B ==5, "Pendamping", R2204B)) %>%
count(R2204B) %>%
ggplot(aes(x = as.factor(R2204B), y = n)) +
geom_col(fill = c("lightsalmon", "lightcoral", "indianred", "#DC143C", "firebrick"))+
labs(title = "Tempat Menerima Bantuan PKH", x = "Tempat",y = "Jumlah Penerima") +
theme_classic()
Berdasarkan bar chart diatas, masyarakat yang menerima bantuan PKH paling banyak melalui kantor pos. Sedangkan, masyarakat paling sedikit menerima bantuan PKH melalui kantor bank dengan jumlah kurang dari 250 orang.
datasusenas %>%
filter(R1803 %in% 1:6) %>%
mutate(R1803 = ifelse(R1803 ==1, "SHM atas nama ART", R1803),
R1803 = ifelse(R1803 ==2, "SHM bukan ART dengan perjanjian tertulis", R1803),
R1803 = ifelse(R1803 ==3, "SHM bukan ART tanpa perjanjian tertulis", R1803),
R1803 = ifelse(R1803 ==4, "Sertifikat selain SHM", R1803),
R1803 = ifelse(R1803 ==5, "Surat bukti lainnya", R1803),
R1803 = ifelse(R1803 ==6, "Tidak punya", R1803)) %>%
count(R1803) %>%
arrange(desc(n)) %>%
ggplot() +
geom_segment(aes(x = fct_reorder(as.factor(R1803), n), xend = fct_reorder(as.factor(R1803), n), y = 0, yend = n), color = "green") +
geom_point(aes(x = fct_reorder(as.factor(R1803), n), y = n), color = "red", size = 2) +
scale_y_continuous(expand = c(0, 0)) +
coord_flip() +
ggtitle("Jenis Bukti Kepemilikan Tanah Bangunan") +
xlab("") +
ylab("Jumlah Bukti Kepemilikan") +
theme_light() +
theme(plot.title = element_text(hjust = 0.5))
Dari Lolipop Chart diatas, dapat dilihat bahwa jumlah terbanyak dari jenis bukti kepemilikan tanah bangunan merupakan Sertifikat Hak Milik atas nama ART dengan angka diatas 9000. Sedangkan jumlah paling sedikit dari jenis bukti kepemilikan tanah merupakan sertifikat selain Sertifikat Hak Milik dengan angka dibawah 3000.
ggplot(data = datasusenas) +
geom_histogram(aes(x = R1804), fill = "#69b3a2", color = "#e9ecef", alpha = 0.5) +
labs(title = "Luas Lantai Rumah", x = "Luas Lantai", y = "Jumlah Rumah") +
xlim(0, 100)
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## Warning: Removed 3962 rows containing non-finite values (`stat_bin()`).
## Warning: Removed 2 rows containing missing values (`geom_bar()`).
Dari Histogram tersebut, dapat diketahui bahwa luas lantai mendekati 50 memiliki jumlah yang paling banyak. Sedangkan, luas tanah dibawah angka 15 memiliki jumlah yang paling sedikit.
datasusenas_clean <- na.omit(datasusenas)
non_finite_values <- datasusenas[!is.finite(datasusenas$R1804), ]
print(non_finite_values)
## [1] X URUT PSU SSU WI1 WI2
## [7] R101 R102 R105 NUINFORT R1701 R1702
## [13] R1703 R1704 R1705 R1706 R1707 R1708
## [19] NUINFORT1 R1801 R1802 R1803 R1804 R1805
## [25] R1806 R1807 R1808 R1809A R1809B R1809C
## [31] R1809D R1809E R1810A R1810B R1811A R1811B
## [37] R1812 R1813A R1813B R1813C R1813D R1813E
## [43] R1814A R1814B R1815A R1815B R1815C R1816
## [49] R1816B1 R1816B2 R1816B3 R1817 R1901A R1901B
## [55] R1901C R1901D R1901E R1901F R1901G R1901H
## [61] R1901I R1901J R2001A R2001B R2001C R2001D
## [67] R2001E R2001F R2001G R2001H R2001I R2001J
## [73] R2001K R2001L R2001M R2002_A R2002_B R2002_C
## [79] R2002_D R2101A R2101B R2101C R2201A2 R2201A3
## [85] R2201B2 R2201B3 R2201C2 R2201C3 R2201D2 R2201D3
## [91] R2201E2 R2201E3 R2201F2 R2201F3 R2202 R2203
## [97] R2204A R2204B R2204C_A R2204C_B R2204C_C R2204C_D
## [103] R2204C_E R2204C_F R2204C_G R2205A R2206A R2207
## [109] R2208A2 R2208B2 R2208BI2 R2208C2 R2208D2 R2208EIB2
## [115] R2208EIIB2 R2208EIT2 R2208EIIT2 R2208EK2 R2208ENU2 R2208EIL2
## [121] R2208EIIL2 R2208ES2 R2208F2 R2208G2 R2208H2 R2208A3
## [127] R2208B3 R2208BI3 R2208C3 R2208D3 R2208EIB3 R2208EIIB3
## [133] R2208EIT3 R2208EIIT3 R2208EK3 R2208ENU3 R2208EIL3 R2208EIIL3
## [139] R2208ES3 R2208F3 R2208G3 R2208H3 R2208A4 R2208B4
## [145] R2208BI4 R2208C4 R2208D4 R2208EIB4 R2208EIIB4 R2208EIT4
## [151] R2208EIIT4 R2208EK4 R2208ENU4 R2208EIL4 R2208EIIL4 R2208ES4
## [157] R2208F4 R2208G4 R2208H4 R2208A5 R2208B5 R2208BI5
## [163] R2208C5 R2208D5 R2208EIB5 R2208EIIB5 R2208EIT5 R2208EIIT5
## [169] R2208EK5 R2208ENU5 R2208EIL5 R2208EIIL5 R2208ES5 R2208F5
## [175] R2208G5 R2208H5 R2209A R2209B R2209C R2210A
## [181] R2210B1 R2210B2 R2210B3 R2210B4 R2210B5 R2211A
## [187] R2211A1 R2211A2 R2211A3 R2211A4 R2211A5 R2211B
## [193] R2211B1 R301 R302 R303 R304 R305
## [199] FWT
## <0 rows> (or 0-length row.names)
datasusenas_clean <- datasusenas[complete.cases(datasusenas), ]
ggplot(data = datasusenas_clean) +
geom_density(aes(x = R1804), fill = "#69b3a2", color = "#e9ecef", alpha = 0.5) +
labs(title = "Luas Lantai Rumah", x = "Jumlah Rumah", y = "Luas Rumah")
Melalui Density Plot diatas, luas rumah dengan 200 meter memiliki frekuensi rumah yang paling sedikit. Sedangkan luas rumah dengan angka mendekati 50 memiliki frekuensi rumah terbanyak.
datasusenas %>%
filter(R2101A %in% 1:4) %>%
mutate(R2101A = ifelse(R2101A == 1, "ART yang bekerja",
ifelse(R2101A == 2, "Kiriman uang",
ifelse(R2101A == 3, "Investasi",
ifelse(R2101A == 4, "Pensiunan", R2101A)
)
)
)) %>%
count(R2101A) %>%
arrange(desc(n)) %>%
ggplot(aes(x = "", y = n, fill = R2101A)) +
geom_bar(stat = "identity", width = 50) +
coord_polar("y", start = 0) +
scale_fill_brewer(palette = "earth") +
theme_void() +
theme(legend.position = "right") +
labs(title = "Sumber Terbesar Pembiayaan di Rumah", fill = " ", y = "Jumlah") +
geom_text(aes(label = n), position = position_stack(vjust = 0.5))
## Warning in pal_name(palette, type): Unknown palette earth
Dilihat dari pie chart diatas, sumber terbesar pembiayaan rumah yang memiliki angka paling tinggi merupakan sumber dari ART yang bekerja. Sedangkan, sumber pembiayaan rumah yang paling sedikit merupakan hasil dari investasi.
library(readr)
datasusenas <- read.csv("C:/Users/keyzh/Downloads/KOR.csv", header = TRUE, sep=",")
datasusenas %>%
mutate(R1810A = case_when(
R1810A == 1 ~ "Air kemasan bermerek",
R1810A == 2 ~ "Air isi ulang",
R1810A == 3 ~ "Leding",
R1810A == 4 ~ "Sumur bor/pompa",
R1810A == 5 ~ "Sumur terlindung",
R1810A == 6 ~ "Sumur air terlindung",
R1810A == 7 ~ "Mata air terlindung",
R1810A == 8 ~ "Mata air tak terlindung",
R1810A == 9 ~ "Air permukaan",
R1810A == 10 ~ "Air hujan",
R1810A == 11 ~ "Lainnya"
))%>%
mutate(R1811A = case_when(
R1811A == 1 ~ "Di rumah",
R1811A == 2 ~ "Di luar kawasan rumah"
))%>%
treemap(datasusenas,
index = c("R1811A", "R1810A"),
vSize = "X",
draw = TRUE,
title = "Sumber air utama untuk minum",
fontsize.labels =9,
fontsize.title = 14,
align.labels = list(c("center", "center")),
palette = "RdYlBu",
border.col = "white",
border.lwds = 5,
aspRatio=1
)
Berdasarkan tree map diatas, kotak berwarna ungu menunjukkan sumber mata air yang berasal dari luar kawasan rumah. Sedangkan kotak berwarna oranye menunjukkan sumber mata air yang berasai dari dalam rumah. Kotak yang paling besar merupakan air isi ulang yang berarti masyarakat paling banyak menggunakan air isi ulang. Sedangkan, masyarakat paling sedikit menggunakan mata air dari sumur air terlindung dan mata air tak terlindung.