library(readxl)
## Warning: package 'readxl' was built under R version 4.3.2
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.3.2
## Warning: package 'ggplot2' was built under R version 4.3.2
## Warning: package 'dplyr' was built under R version 4.3.2
## Warning: package 'lubridate' was built under R version 4.3.2
## ── Attaching core tidyverse packages ──────────────────────── tidyverse 2.0.0 ──
## ✔ dplyr     1.1.4     ✔ readr     2.1.4
## ✔ forcats   1.0.0     ✔ stringr   1.5.0
## ✔ ggplot2   3.5.0     ✔ 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(dplyr)
library(reshape2)
## 
## Attaching package: 'reshape2'
## 
## The following object is masked from 'package:tidyr':
## 
##     smiths
library(ggforce)
## Warning: package 'ggforce' was built under R version 4.3.3
library(sf)
## Warning: package 'sf' was built under R version 4.3.3
## Linking to GEOS 3.11.2, GDAL 3.8.2, PROJ 9.3.1; sf_use_s2() is TRUE

Antar Peubah Numerik

house <- read.csv("C:/Users/Lenovo/Downloads/californiahouse.csv", header = TRUE, sep=",")
str(house)
## 'data.frame':    20640 obs. of  10 variables:
##  $ longitude         : num  -122 -122 -122 -122 -122 ...
##  $ latitude          : num  37.9 37.9 37.9 37.9 37.9 ...
##  $ housing_median_age: int  41 21 52 52 52 52 52 52 42 52 ...
##  $ total_rooms       : int  880 7099 1467 1274 1627 919 2535 3104 2555 3549 ...
##  $ total_bedrooms    : int  129 1106 190 235 280 213 489 687 665 707 ...
##  $ population        : int  322 2401 496 558 565 413 1094 1157 1206 1551 ...
##  $ households        : int  126 1138 177 219 259 193 514 647 595 714 ...
##  $ median_income     : num  8.33 8.3 7.26 5.64 3.85 ...
##  $ ocean_proximity   : chr  "NEAR BAY" "NEAR BAY" "NEAR BAY" "NEAR BAY" ...
##  $ median_house_value: int  452600 358500 352100 341300 342200 269700 299200 241400 226700 261100 ...
ggplot(house, aes(x = population , y = total_rooms, color = "red")) +
  geom_point() +  
  labs(title = "Hubungan Populasi dengan Total Ruangan Rumah", x = "Population", y = "Total Ruangan") +
  theme_light()

Pada grafik di atas, menggambarkan bahwa hubungan antara populasi penduduk California dengan total ruangan rumah di California memiliki korelasi positif. Artinya, semakin banyak atau meningkatnya populasi penduduk California, maka semakin banyak pula total ruangan pada rumah di California.

ggplot(house, aes(x = population , y = households, color = "red")) +
  geom_point() +  
  labs(title = "Hubungan Populasi dengan Jumlah Rumah Tangga", x = "Population", y = "Rumah Tangga") +
  theme_light()

Pada grafik di atas, menggambarkan bahwa hubungan antara populasi penduduk California dengan total rumah tangga yang ada di California memiliki korelasi positif. Artinya, semakin banyak atau meningkatnya populasi penduduk California, maka semakin banyak pula rumah tangga yang ada di California.

Time Series

tesla <- read.csv("C:/Users/Lenovo/Downloads/TSLA.csv", header = TRUE, sep=",")
str(tesla)
## 'data.frame':    1260 obs. of  7 variables:
##  $ Date     : chr  "2019-05-14" "2019-05-15" "2019-05-16" "2019-05-17" ...
##  $ Open     : num  15.3 15.3 15.3 14.8 13.5 ...
##  $ High     : num  15.6 15.5 15.4 14.8 13.7 ...
##  $ Low      : num  15.2 15 15.1 13.9 13 ...
##  $ Close    : num  15.5 15.5 15.2 14.1 13.7 ...
##  $ Adj.Close: num  15.5 15.5 15.2 14.1 13.7 ...
##  $ Volume   : int  108786000 109440000 112249500 266800500 307893000 270058500 280278000 398206500 212049000 154693500 ...
timeseries <- ts(tesla$High, start = c(2019,1), end = c(2024,10), frequency = 20)
plot(timeseries, main = "Harga Penjualan Tertinggi Pada Saham Tesla ", col = "maroon", xlab = "Tahun", ylab = "Harga")

Pada grafik di atas menggambarkan harga penjualan tertinggi pada saham Perusahaan Tesla pada tahun 2019 hingga 2024 (5 tahun terakhir). Dapat dilihat bahwa terjadi kenaikan dan penurunan penjualan tertinggi yang berbeda pada saham Perusahaan Tesla. Penurunan yang drastis terjadi pada pertengahan tahun 2019 menuju tahun 2020. Kenaikan tertinggi terjadi pada pertengahan tahun 2021 menuju tahun 2022. Pada tahun 2024, harga penjualan tertinggi pun kerap meningkat.

Geospatial

my_sf <- read_sf("C:/Users/Lenovo/Downloads/BATAS PROVINSI DESEMBER 2019 DUKCAPIL/batasprovinsi2019.shp")
pangan <- read_xlsx("C:/Users/Lenovo/Downloads/biayapangan.xlsx")
pangan
## # A tibble: 34 × 2
##    Provinsi               IKP
##    <chr>                <dbl>
##  1 Aceh                  55.2
##  2 Sumatera Utara        51.4
##  3 Sumatera Barat        49.3
##  4 Riau                  39.7
##  5 Jambi                 45.1
##  6 Sumatera Selatan      56.2
##  7 Bengkulu              49.5
##  8 Lampung               52.0
##  9 Kep. Bangka Belitung  43.5
## 10 Kep. Riau             28.1
## # ℹ 24 more rows
pangan$PROVINSI <- toupper(pangan$Provinsi)
Persen.Geo <- merge(x=my_sf, y=pangan, by="PROVINSI",all.x = TRUE, all.y=TRUE)
ggplot(Persen.Geo) +
  geom_sf(aes(fill= IKP)
          , color = "black") +
  scale_fill_gradient(low="orange", high="brown") +
  theme_void()

Dapat dilihat pada grafik di atas menunjukkan Indeks Ketahanan Pangan tahun 2023 pada provinsi di Indonesia. Semakin gelap warnanya (coklat) maka menunjukkan indeks ketahanan pangan yang semakin tinggi pada daerah tersebut. Contoh seperti pada Pulau Jawa dan pada Provinsi Sumatera Selatan yang memiliki warna gelap (coklat) menunjukkan bahwa Indeks Ketahanan Pangan yang tinggi.