Cara merencanakan nilai prediksi di r (dengan contoh)
Seringkali Anda mungkin ingin memplot nilai prediksi model regresi di R untuk memvisualisasikan perbedaan antara nilai prediksi dan nilai sebenarnya.
Tutorial ini memberikan contoh pembuatan plot jenis ini di R dan ggplot2.
Contoh 1: memplot nilai prediksi dan nilai aktual dalam basis R
Kode berikut menunjukkan cara menyesuaikan model regresi linier berganda di R dan kemudian membuat plot nilai prediksi dan nilai aktual:
#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) #plot predicted vs. actual values plot(x=predict(model), y=df$y, xlab=' Predicted Values ', ylab=' Actual Values ', main=' Predicted vs. Actual Values ') #add diagonal line for estimated regression line abline(a= 0 , b= 1 )
Sumbu X menampilkan nilai prediksi dari model dan sumbu Y menampilkan nilai aktual dari kumpulan data. Garis diagonal yang berada di tengah grafik merupakan garis taksiran regresi.
Karena masing-masing titik data terletak cukup dekat dengan perkiraan garis regresi, hal ini menunjukkan bahwa model regresi cukup berhasil dalam menyesuaikan data.
Kita juga dapat membuat bingkai data yang menampilkan nilai aktual dan prediksi untuk setiap titik data:
#create data frame of actual and predicted values values <- data. frame (actual=df$y, predicted=predict(model)) #view data frame values actual predicted 1 22 22.54878 2 24 23.56707 3 24 23.96341 4 25 24.98171 5 25 25.37805 6 27 26.79268 7 29 28.60366 8 31 30.41463 9 32 33.86585 10 36 34.88415
Contoh 2: Merencanakan Nilai Prediksi dan Nilai Aktual di ggplot2
Kode berikut menunjukkan cara membuat plot nilai prediksi dan nilai aktual menggunakan paket visualisasi data ggplot2 :
library (ggplot2) #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) #plot predicted vs. actual values ggplot(df, aes (x=predict(model), y=y)) + geom_point() + geom_abline(intercept= 0 , slope= 1 ) + labs(x=' Predicted Values ', y=' Actual Values ', title=' Predicted vs. Actual Values ')
Sekali lagi, sumbu X menunjukkan nilai prediksi dari model dan sumbu Y menunjukkan nilai sebenarnya dari kumpulan data.
Sumber daya tambahan
Cara membuat plot sisa di R
Cara membuat histogram residu di R
Cara menghitung residu standar di R