Cara memprediksi nilai tunggal menggunakan model regresi di r


Untuk menyesuaikan model regresi linier di R, kita dapat menggunakan fungsi lm() , yang menggunakan sintaks berikut:

 model <- lm(y ~ x1 + x2, data=df)

Kita kemudian dapat menggunakan sintaks berikut untuk menggunakan model guna memprediksi nilai tunggal:

 predict(model, newdata = new)

Contoh berikut menunjukkan cara memprediksi nilai tunggal menggunakan model regresi yang sesuai di R.

Contoh 1: Memprediksi menggunakan model regresi linier sederhana

Kode berikut menunjukkan cara menyesuaikan model regresi linier sederhana di R:

 #create data
df <- data. frame (x=c(3, 4, 4, 5, 5, 6, 7, 8, 11, 12),
                 y=c(22, 24, 24, 25, 25, 27, 29, 31, 32, 36))

#fit simple linear regression model
model <- lm(y ~ x, data=df)

Dan kita dapat menggunakan kode berikut untuk memprediksi nilai respons observasi baru:

 #define new observation
new <- data. frame (x=c(5))

#use the fitted model to predict the value for the new observation
predict(model, newdata = new)

       1 
25.36364 

Model memperkirakan observasi baru ini akan memiliki nilai respon sebesar 25.36364 .

Contoh 2: Memprediksi menggunakan model regresi linier berganda

Kode berikut menunjukkan cara menyesuaikan model regresi linier berganda di R:

 #create data
df <- data. frame (x1=c(3, 4, 4, 5, 5, 6, 7, 8, 11, 12),
                 x2=c(6, 6, 7, 7, 8, 9, 11, 13, 14, 14),
                 y=c(22, 24, 24, 25, 25, 27, 29, 31, 32, 36))

#fit multiple linear regression model
model <- lm(y ~ x1 + x2, data=df)

Dan kita dapat menggunakan kode berikut untuk memprediksi nilai respons observasi baru:

 #define new observation
new <- data.frame(x1=c(5),
                  x2=c(10))

#use the fitted model to predict the value for the new observation
predict(model, newdata = new)

       1 
26.17073 

Model memperkirakan observasi baru ini akan memiliki nilai respon sebesar 26.17073 .

Potensi kesalahan saat memprediksi nilai baru

Kesalahan paling umum yang mungkin Anda temui saat mencoba memprediksi nilai baru adalah ketika kumpulan data yang Anda gunakan untuk menyesuaikan model regresi tidak memiliki nama kolom yang sama dengan observasi baru yang Anda coba prediksi .

Misalnya, kita memasang model regresi linier berganda berikut di R:

 #createdata
df <- data. frame (x1=c(3, 4, 4, 5, 5, 6, 7, 8, 11, 12),
                 x2=c(6, 6, 7, 7, 8, 9, 11, 13, 14, 14),
                 y=c(22, 24, 24, 25, 25, 27, 29, 31, 32, 36))

#fit multiple linear regression model
model <- lm(y ~ x1 + x2, data=df)

Selanjutnya, misalkan kita mencoba menggunakan model tersebut untuk memprediksi nilai respons observasi baru ini:

 #define new observation
new <- data.frame(x_1=c(5),
                  x_2=c(10))

#use the fitted model to predict the value for the new observation
predict(model, newdata = new)

Error in eval(predvars, data, env): object 'x1' not found

Kami menerima kesalahan karena nama kolom observasi baru (x_1, x_2) tidak cocok dengan nama kolom bingkai data asli (x1, x2) yang kami gunakan agar sesuai dengan model regresi.

Sumber daya tambahan

Cara melakukan regresi linier sederhana di R
Cara melakukan regresi linier berganda di R
Cara membuat plot sisa di R

Tambahkan komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *