Regresi Linear

Regresi linear (linear regression) adalah metode yang digunakan untuk memperoleh model hubungan antara variabel dependen dengan variabel independen (Walpole, 2012). Terdapat 2 jenis regresi linear yaitu, regresi linear sederhana (simple linear regression) dan regresi linear ganda (multiple linear regression). Perbedaan terdapat pada banyaknya variabel independen. Regresi linear sederhana adalah metode yang digunakan untuk memperoleh model hubungan antara satu variabel dependen dengan satu variabel independen sedangkan regresi linear ganda metode yang digunakan untuk memperoleh model hubungan antara satu variabel dependen dengan lebih dari satu variabel independen (Walpole, 2012).

Contoh Kasus Regresi Linear Sederhana

Pada contoh ini akan melihat hubungan gaji dengan lama pengalaman bekerja

Melihat 5 Dataset Teratas

dataset = read.csv('Salary_Data.csv')
head(dataset)
##   YearsExperience Salary
## 1             1.1  39343
## 2             1.3  46205
## 3             1.5  37731
## 4             2.0  43525
## 5             2.2  39891
## 6             2.9  56642

Statistik Deskriptif

Fungsi summary() adalah untuk melihat nilai statistik deskriptif dari data pada masing-masing variabel. Karena data yang digunakan memiliki variabel numerik maka statistik deskriptif yang ditampilkan adalah nilai minimum (Min.), quantil pertama (1st Qu.), median (Median), rata-rata (Mean), quantil ketiga (3rd Qu.), maksimum (Max.) dan banyaknya missing value (NA’s) (jika terdapat missing value pada data).

summary(dataset)
##  YearsExperience      Salary      
##  Min.   : 1.100   Min.   : 37731  
##  1st Qu.: 3.200   1st Qu.: 56721  
##  Median : 4.700   Median : 65237  
##  Mean   : 5.313   Mean   : 76003  
##  3rd Qu.: 7.700   3rd Qu.:100545  
##  Max.   :10.500   Max.   :122391

Membagi Dataset

Pada bagian ini, kita akan membagi dataset menjadi data latih dan data uji. Rasio pembagian data dapat ditentukan oleh peneliti. Kita dapat menggunakan package caTools untuk membagi dataset. Pertama-tama kita harus mengunduh package caTools, yaitu install.packages(‘caTools’)

library(caTools)
## Warning: package 'caTools' was built under R version 3.6.3
set.seed(123)
split = sample.split(dataset$Salary, SplitRatio = 0.8)
training_set = subset(dataset, split == TRUE)
test_set = subset(dataset, split == FALSE)

Membangun Model Regresi Linear Sederhana

regressor = lm(formula = Salary ~ YearsExperience,
               data = training_set)

Memprediksi Data Uji

y_pred = predict(regressor, newdata = test_set)

Memvisualisasikan Hasil Data Latih

library(ggplot2)
## Warning: package 'ggplot2' was built under R version 3.6.3
ggplot() +
  geom_point(aes(x = training_set$YearsExperience, y = training_set$Salary),
             colour = 'red') +
  geom_line(aes(x = training_set$YearsExperience, y = predict(regressor, newdata = training_set)),
            colour = 'blue') +
  ggtitle('Gaji vs Pengalaman (Data Latih)') +
  xlab('Lama Pengalaman Bekerja') +
  ylab('Gaji')

Memvisualisasikan Hasil Data Uji

ggplot() +
  geom_point(aes(x = test_set$YearsExperience, y = test_set$Salary),
             colour = 'red') +
  geom_line(aes(x = training_set$YearsExperience, y = predict(regressor, newdata = training_set)),
            colour = 'blue') +
  ggtitle('Gaji vs Pengalaman (Data Uji)') +
  xlab('Lama Pengalaman Bekerja') +
  ylab('Gaji')

Daftar Pustaka

  1. Walpole, R. E. (2012). Probability and statistics for engineers and scientists. Boston, Mass: Pearson Education.

Penutup

Sekian tulisan kali ini. Next kita akan membahas contoh kasus regresi linear ganda.