Membuat Algoritma Regresi Linear di R

Khofifah
2 min readJul 29, 2021

--

Regresi Linear merupakan salah satu metode statistika yang digunakan untuk menganalisa hubungan linear antar variabel independen (X) dan variabel dependen (Y). dengan formula y = a+bx dengan nilai a adalah konstanta dan nilai b adalah koefisien dari variabel independen x.

Formula mencari konstanta dan koefisien regresi

Dengan menggunakan formula diatas, Saya akan membuat algorithma mencari a dan b di R. berikut ini sintaks dan penjelasannya

#membuat fungsi jumlah#fungsi untuk menjumlahkan semua elemen x
sumfunx<-function(x){
#menentukan nilai awal sum
sum<-0
#melakukan perulangan dari i sampai panjang n dari x
for (i in 1:(length(x))){
sum=sum+x[i]
}
sum
}
#fungsi untuk menjumlahkan semua elemen y
sumfuny<-function(y){
#memisalkan nilai awal sumy
sumy<-0
#melakukan perulangan dari i sampai panjang n dari y
for (i in 1:(length(y))){
sumy=sumy+y[i]
}
sumy
}
#fungsi jumlahkali
jumlahkali<-function(x,y){
#melakukan perulangan dari i sampai panjang n dari x
for (i in 1:(length(x))){
#melakukan perulangan dari i sampai panjang n dari y
for(i in 1:(length(y))){
xy=x%*%y
}}
xy
}
#fungsi untuk menentukan parameter a dan b
regresi<-function(x,y){
b=(length(x)*jumlahkali(x,y)-(sumfunx(x)*sumfuny(y))) / ((length(x)*sum(x*x))-(sumfunx(x))^2)
a=((sumfuny(y))-b*sumfunx(x))/length(x)
return(c(a,b))
}

Selanjutya kita akan membandingkan kontanta dan koefisien regresi antara algoritma diatas dengan fungsi regresi linear bawaan dari R yaitu lm . misalkan ada sebuah dataset ingin diketahui hubungan antara rata-rata suhu ruangan(x) terhadap jumlah cacat produksi(y).

Dataset for linear regression

Dengan menggunakan algoritma yang sudah dibuat didapatkan hasil sebagai berikut:

#import dataset
data=read.delim(“clipboard”)
#melihat 6 data pertama
head(data)
output dari head(data)
#mengubah nama variabel
x=data$Rata…rata.suhu.ruangan
y=data$Jumlah.cacat.produksi
regresi(x,y)
nilai konstanta(kiri) dan koefisien regresi(kanan)

Selanjutnya dengan menggunakan fungsi lm didapatkan hasil sebagai berikut:

konstanta dan koefisien dengan menggunakan fungsi lm

Dari hasil output diatas terlihat bahwa nilai konstanta dan koefisien regresi antara algoritma yang dibuat dari formula regresi sama seperti fungsi bawaan dari R yaitu lm(y~x). sehingga model yang terbentuk adalah sebagai berikut

y = -22.795 + 1.384 x

--

--