Regresi Linier Sederhana dan Berganda¶
Regresi linier yaitu menentukan satu persaman dan garis yang menunjukkan hubungan antara variabel bebas dan variabel terikat, yang merupakan persamaan penduga yang berguna untuk menaksir/meramalkan variabel terikat. Untuk mempelajari hubungan-hubungan antara beberapa variabel, analisis ini terdiri dari dua bentuk, yaitu :
- Analisi Regresi Sederhana (simple analisis regresi)
- Analisi Regresi Berganda (multiple analisis regresi)
Analisis regresi sederhana merupakan hubungan antara dua variabel yaitu variabel bebas (independent variable) dan variabel terikat (dependent variable). Sedangkan analisis regresi berganda merupakan hubungan antara 3 variabel atau lebih, yaitu sekurang-kurangnya 2 variabel bebas dengan satu variabel terikat.
Regresi Linier Sederhana¶
Regresi linier sederhana hanya ada satu peubah bebas X yang dihubungkan dengan satu peubah terikat Y. Bentuk model umum regresi sederhana yang menunjukkan antara dua variabel.
Y = 𝑏x + a
Dengan : Y = Variabel terikat x = Variabel bebas a = konstanta b = Parameter Koefisien Regresi Variabel Bebas
Berikut adalah rumus untuk mencari nilai b:
Berikut adalah rumus untuk mencari nilai a:
Kemudian ada koefisien korelasi yang menunjukkan bahwa nilai suatu variabel bergantung pada perubahan nilai variabel lain. Berikut adalah rumus untuk menghitung koefisien korelasi:
" style="zoom:100%;" />
Regresi Linier Berganda¶
Regresi linier berganda hampir sama dengan Regresi linier sederhana, hanya saja pada Regresi linier berganda variabel penduga (variabel bebas) lebih dari satu variabel penduga. Tujuan analisis Regresi linier berganda adalah untuk mengukur intensitas hubungan antara dua variabel atau lebih dan memuat prediksi/perkiraan nilai Y atas nilai X. Bentuk persamaan Regresi linier berganda yang mencakup dua atau lebih variabel, yaitu :
Dimana:
y = variabel terikat.
x = variable bebas.
b = koefisien estimasi.
a = konstanta
Kali ini akan dilakukan perhitungan regresi linear berganda dengan dua fitur variabel bebas, berikut adalah contoh perhitungannya.
X1 | X2 | Y |
---|---|---|
2 | 3 | 10 |
4 | 2 | 12 |
5 | 3 | 16 |
7 | 1 | 16 |
Memprediksi data dapat menggunakan persamaan y=x1b1+x2b2+ay=x1b1+x2b2+a tadi, namun sebelum menggunakan persamaan tersebut perlu untuk mencari koefisien estimasi dari b1, b2, dan a.
No | X1 | X2 | Y | X1 ^ 2 | X2 ^ 2 | Y ^ 2 | X1 * X2 | X1 * Y | X2 * Y |
---|---|---|---|---|---|---|---|---|---|
1 | 2 | 3 | 10 | 4 | 9 | 100 | 6 | 20 | 30 |
2 | 4 | 2 | 12 | 16 | 4 | 144 | 8 | 48 | 24 |
3 | 5 | 3 | 16 | 25 | 9 | 256 | 15 | 80 | 48 |
4 | 7 | 1 | 16 | 49 | 1 | 256 | 7 | 112 | 16 |
jumlah | 18 | 9 | 54 | 94 | 23 | 756 | 36 | 260 | 118 |
data diatas kemudian dinormalisasi dengan cara berikut.
Dari proses perhitungan tadi telah di dapatkan persamaan y=x1∗2+x2∗2+0y=x1∗2+x2∗2+0. misalkan ada data baru dengan x1=6x1=6 dan x2=2x2=2 maka y=6∗2+2∗2+0=16
Implementasi dengan Sklearn Python¶
import pandas as pd from sklearn.linear_model import LinearRegression data = pd.read_csv('data.csv', sep=';') df = pd.DataFrame(data) df.style.hide_index()
X = df.iloc[0:, 0:4].values y = df.iloc[0:, 4].values reg = LinearRegression().fit(X, y) reg.score(X, y)
LinearRegresion() yang merupakan libarary dari sklearn untuk melakukan prediksi menggunakan metode regresi linear.
1.0
a = reg.intercept_ a
attribute intercept_ untuk mendapatkan nilai konstanta
-276.51245551601414
reg.coef_
attribut coef_ untuk mendapatkan nilai coefisien dari seluruh fitur.
array([31.5480427 , 27.83274021, 33.40569395, 49.24199288])
b1 = reg.coef_[0] b2 = reg.coef_[1] b3 = reg.coef_[2] b4 = reg.coef_[3] x1 = 4 x2 = 5 x3 = 2 x4 = 1 y = b1*x1 + b2*x2 + b3*x3 + b4*x4 + a y
104.89679715302498
reg.predict(np.array([[4, 5, 2, 1]]))
array([104.89679715])