Data yang digunakan dalam penelitian ini merupakan data sekunder yang didapatkan dari Website Badan Pusat Statistik (BPS) Jawa Barat tahun 2023.

X1: Tingkat Pengangguran Terbuka

X2: Tingkat Partisipasi Angakatan Kerja

X3: Indeks Pembangunan Manusia

X4: APK Sekolah Menengah

X5: Laju Pertumbuhan PDRB

library(readxl)
tpt_jabar <- read_excel("D:/Artikel spline TPT/spline tpt jabar.xlsx", sheet="Sheet1")
summary(tpt_jabar)
##        Y                x1              x2              x3        
##  Min.   : 1.520   Min.   :61.95   Min.   :68.18   Min.   : 78.82  
##  1st Qu.: 6.535   1st Qu.:64.73   1st Qu.:70.67   1st Qu.: 89.34  
##  Median : 7.650   Median :66.97   Median :73.25   Median : 97.40  
##  Mean   : 7.186   Mean   :66.97   Mean   :74.11   Mean   : 97.46  
##  3rd Qu.: 8.500   3rd Qu.:68.40   3rd Qu.:76.64   3rd Qu.:105.50  
##  Max.   :10.520   Max.   :80.15   Max.   :83.29   Max.   :108.99  
##        x4              x5       
##  Min.   :40.02   Min.   :4.630  
##  1st Qu.:43.51   1st Qu.:4.980  
##  Median :44.83   Median :5.100  
##  Mean   :44.83   Mean   :5.307  
##  3rd Qu.:46.92   3rd Qu.:5.255  
##  Max.   :49.14   Max.   :9.760

Data pada file Excel perlu dibersihkan terlebih dahulu agar dapat dibaca dengan benar di R. Setiap kolom numerik harus dipastikan tidak mengandung karakter non-angka seperti simbol rupiah, persen, tanda petik, atau pemisah ribuan. Format sel juga harus diubah menjadi tipe Number, serta spasi yang tidak diperlukan harus dihapus. Dengan melakukan pembersihan ini, proses pembacaan data di R akan berjalan tanpa peringatan (warning) dan analisis dapat dilakukan secara optimal

ols <- lm(Y ~ x1 + x2  + x3 + x4 + x5, data=tpt_jabar)
car::vif(ols)
##       x1       x2       x3       x4       x5 
## 1.292247 3.468670 1.313763 2.951912 1.532332

Pengujian ini dilakukan dengan melihat nilai Variance Inflation Factor (VIF) pada variabel independen, di mana VIF di atas 10 menunjukkan adanya multikolinearitas. Semua variabel independen memiliki nilai VIF kurang dari 10.

# Install jika belum
#install.packages("corrplot")
# Load library
library(corrplot)
## corrplot 0.95 loaded
# Ambil variabel X
x_data <- tpt_jabar[, c(2,3,4,5,6)]  # Ganti sesuai variabel X yang digunakan

# Hitung matriks korelasi
cor_matrix <- cor(x_data, use = "complete.obs")
# Plot korelasi
corrplot(cor_matrix, method = "color", type = "upper", 
         tl.col = "black", tl.srt = 45,
         addCoef.col = "white")  # Menampilkan nilai korelasi

Nilai korelasi antar variabel independent memiliki nilai yang kurang dari 0,8, segingga dapat disimpulkan bahwa korelasi antar variabel tidak tinggi dan kelima variabel independen tersebut dapat digunakan dalam mengestimasi model regresi spline truncated.

# Install dan load ggplot2 jika belum terinstal
#install.packages("ggplot2")  # Hanya perlu dijalankan sekali
library(ggplot2)

# Plot scatterplot dengan garis kurva (smoothing)
ggplot(tpt_jabar, aes(x = x1 , y = Y)) +
   geom_point(color = "blue", size = 2.5) +  # Scatter plot (titik-titik)     
  geom_smooth(method = "loess",            # Garis kurva (loess regression)
              color = "red", 
              se = FALSE) +           
  theme_minimal() +                      # Tema bersih
  labs(title = "Scatterplot dengan Garis Kurva",
       x = "Variabel TPAK",
       y = "Variabel TPT")
## `geom_smooth()` using formula = 'y ~ x'

ggplot(tpt_jabar, aes(x = x2 , y = Y)) +
  geom_point(color = "blue", size = 2.5) +  # Scatter plot (titik-titik)     
  geom_smooth(method = "loess",            # Garis kurva (loess regression)
              color = "red", 
              se = FALSE) +              # Hapus shading (standard error)
  theme_minimal() +                      # Tema bersih
  labs(title = "Scatterplot dengan Garis Kurva",
       x = "Variabel IPM",
       y = "Variabel TPT")
## `geom_smooth()` using formula = 'y ~ x'

ggplot(tpt_jabar, aes(x = x3 , y = Y)) +
  geom_point(color = "blue", size = 2.5) +  # Scatter plot (titik-titik)     
  geom_smooth(method = "loess",            # Garis kurva (loess regression)
              color = "red", 
              se = FALSE) +             # Hapus shading (standard error)
  theme_minimal() +                      # Tema bersih
  labs(title = "Scatterplot dengan Garis Kurva",
       x = "Variabel APK Sekolah Menengah",
       y = "Variabel TPT")
## `geom_smooth()` using formula = 'y ~ x'

ggplot(tpt_jabar, aes(x = x4 , y = Y)) +
 geom_point(color = "blue", size = 2.5) +  # Scatter plot (titik-titik)     
  geom_smooth(method = "loess",            # Garis kurva (loess regression)
              color = "red", 
              se = FALSE) +             # Hapus shading (standard error)
  theme_minimal() +                      # Tema bersih
  labs(title = "Scatterplot dengan Garis Kurva",
       x = "Variabel Dependency Ratio",
       y = "Variabel TPT")
## `geom_smooth()` using formula = 'y ~ x'

ggplot(tpt_jabar, aes(x = x5 , y = Y)) +
 geom_point(color = "blue", size = 2.5) +  # Scatter plot (titik-titik)     
  geom_smooth(method = "loess",            # Garis kurva (loess regression)
              color = "red", 
              se = FALSE) +              # Hapus shading (standard error)
  theme_minimal() +                      # Tema bersih
  labs(title = "Scatterplot dengan Garis Kurva",
       x = "Variabel Pertumbuhan Ekonomi",
       y = "Variabel TPT")
## `geom_smooth()` using formula = 'y ~ x'

Terlihat adanya pola hubungan non-linear antara variabel pertumbuhan ekonomi dan variabel TPT (Tingkat Pengangguran Terbuka). Garis kurva menunjukkan bahwa pada tingkat pertumbuhan ekonomi tertentu, TPT cenderung menurun, namun pada titik tertentu dapat meningkat kembali. Hal ini mengindikasikan bahwa hubungan antara kedua variabel tidak bersifat linier sederhana, melainkan mungkin dipengaruhi oleh faktor lain.