R'de bir regresyon modeli kullanılarak tek bir değer nasıl tahmin edilir


R’ye doğrusal bir regresyon modeli sığdırmak için aşağıdaki sözdizimini kullanan lm() işlevini kullanabiliriz:

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

Daha sonra modeli tek bir değeri tahmin etmek amacıyla kullanmak için aşağıdaki sözdizimini kullanabiliriz:

 predict(model, newdata = new)

Aşağıdaki örnekler, R’deki uygun regresyon modellerini kullanarak tek bir değerin nasıl tahmin edileceğini gösterir.

Örnek 1: Basit bir doğrusal regresyon modeli kullanarak tahminde bulunun

Aşağıdaki kod, R’ye basit bir doğrusal regresyon modelinin nasıl sığdırılacağını gösterir:

 #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)

Yeni bir gözlemin yanıt değerini tahmin etmek için aşağıdaki kodu kullanabiliriz:

 #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, bu yeni gözlemin 25,36364 yanıt değerine sahip olacağını öngörüyor.

Örnek 2: Çoklu doğrusal regresyon modeli kullanarak tahminde bulunun

Aşağıdaki kod, R’ye çoklu doğrusal regresyon modelinin nasıl sığdırılacağını gösterir:

 #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)

Yeni bir gözlemin yanıt değerini tahmin etmek için aşağıdaki kodu kullanabiliriz:

 #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, bu yeni gözlemin 26,17073 yanıt değerine sahip olacağını öngörüyor.

Yeni değerleri tahmin ederken olası hatalar

Yeni bir değeri tahmin etmeye çalışırken karşılaşabileceğiniz en yaygın hata , regresyon modelini sığdırmak için kullandığınız veri kümesinin, tahmin etmeye çalıştığınız yeni gözlemle aynı sütun adlarına sahip olmamasıdır .

Örneğin, R’de aşağıdaki çoklu doğrusal regresyon modelini uyguladığımızı varsayalım:

 #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)

Daha sonra, bu yeni gözlemin yanıt değerini tahmin etmek için modeli kullanmaya çalıştığımızı varsayalım:

 #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

Yeni gözlemin sütun adları (x_1, x_2), regresyon modeline sığdırmak için kullandığımız orijinal veri çerçevesinin (x1, x2) sütun adlarıyla eşleşmediğinden bir hata aldık.

Ek kaynaklar

R’de basit doğrusal regresyon nasıl gerçekleştirilir
R’de çoklu doğrusal regresyon nasıl gerçekleştirilir
R’de artık arsa nasıl oluşturulur

Yorum ekle

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir