Tugas Pertemuan 10
Ekonometrika
| Kontak | : \(\downarrow\) |
| mugemisausan05@gmail.com | |
| https://www.instagram.com/saram.05/ | |
| RPubs | https://rpubs.com/sausanramadhani/ |
Mendefenisikan Permasalahan
Terdapat dataset data_house.csv yang memiliki kolom
sebagai berikut :
- id : Nomor identifikasi unik
- date :
Tanggal penjualan
- price : Harga penjualan ($)
- bedrooms :
Jumlah kamar tidur
- bathrooms : Jumlah kamar mandi
-
sqft_living : Luas rumah dalam kaki persegi
- sqft_lot : Luas lahan
dalam kaki persegi
- floors : Jumlah lantai
- waterfront :
Memiliki garis pantai (0=no,1=yes)
- view : Pemandangan (nilai 0-4)
- condition : Kondisi rumah (nilai 1-5)
- grade : Peringkat
(nilai 1-13)
- sqft_above : Luas rumah di atas permukaan tanah
- sqft_basement : Luas ruang bawah tanah
- yr_built : Tahun
konstruksi rumah
- yr_renovated : Tahun renovasi terakhir
-
zipcode : Kode pos
- lat : Garis lintang geografis
- long :
Garis bujur geografis
- sqft_living15 : Luas rumah pada tahun 2015
- sqft_lot15 : Luas tanah pada tahun 2015
Dilihat dari variabel-variabelnya, dataset ini merupakan data penjualan atau listing rumah. Dimana listing rumah yaitu proses memasukkan informasi tentang rumah yang tersedia untuk dijual ke dalam daftar atau katalog yang dapat diakses oleh calon pembeli. Hal ini merupakan langkah awal dalam proses penjualan rumah di pasar real estat. Tujuan dari listing rumah yaitu untuk menarik minat pembeli potensial dan memperoleh penawaran yang menguntungkan untuk penjual.
Dengan dataset ini, dapat dilakukan berbagai analisis seperti
prediksi harga rumah, pengaruh atribut tertentu terhadap harga, dan
sebagainya. Analisis ini bertujuan untuk menemukan model yang paling
sesuai untuk memprediksi harga rumah berdasarkan berbagai fitur yang
tersedia dalam dataset house_data.csv. Dengan menggunakan
metode pemodelan seperti Regresi Linear, Decision Tree, dan Neural
Network, serta evaluasi kinerja model dengan metrik seperti RMSE dan
R-squared, tujuan analisis ini adalah untuk memilih model yang dapat
memberikan prediksi harga rumah yang paling akurat dan dapat dipercaya
bagi para pemangku kepentingan dalam industri real estat.
Data Preparation
Untuk menganalisis dataset house_data.csv dapat
menggunakan bahasa pemrograman R. Sebelum menganalisis, perlu dilakukan
pembacaan file CSV tersebut dengan fungsi read_csv. Berikut
ini data dari house_data.csv:
data10 <- read.csv("house_data.csv")
data10Hasil coding tersebut menampilkan data dari dataset
house_data.csv yang telah dibaca dan dimuat ke dalam R.
Dataset ini terdiri dari 21.613 baris dan 21 kolom.
Setiap baris mewakili satu entri atau observasi, sedangkan setiap kolom
mewakili atribut atau variabel yang berbeda tentang rumah.
Exploratory Data Analysis (EDA)
str(data10)## 'data.frame': 21613 obs. of 21 variables:
## $ id : num 7.13e+09 6.41e+09 5.63e+09 2.49e+09 1.95e+09 ...
## $ date : chr "20141013T000000" "20141209T000000" "20150225T000000" "20141209T000000" ...
## $ price : int 221900 538000 180000 604000 510000 1225000 257500 291850 229500 323000 ...
## $ bedrooms : int 3 3 2 4 3 4 3 3 3 3 ...
## $ bathrooms : num 1 2.25 1 3 2 4.5 2.25 1.5 1 2.5 ...
## $ sqft_living : int 1180 2570 770 1960 1680 5420 1715 1060 1780 1890 ...
## $ sqft_lot : int 5650 7242 10000 5000 8080 101930 6819 9711 7470 6560 ...
## $ floors : num 1 2 1 1 1 1 2 1 1 2 ...
## $ waterfront : int 0 0 0 0 0 0 0 0 0 0 ...
## $ view : int 0 0 0 0 0 0 0 0 0 0 ...
## $ condition : int 3 3 3 5 3 3 3 3 3 3 ...
## $ grade : int 7 7 6 7 8 11 7 7 7 7 ...
## $ sqft_above : int 1180 2170 770 1050 1680 3890 1715 1060 1050 1890 ...
## $ sqft_basement: int 0 400 0 910 0 1530 0 0 730 0 ...
## $ yr_built : int 1955 1951 1933 1965 1987 2001 1995 1963 1960 2003 ...
## $ yr_renovated : int 0 1991 0 0 0 0 0 0 0 0 ...
## $ zipcode : int 98178 98125 98028 98136 98074 98053 98003 98198 98146 98038 ...
## $ lat : num 47.5 47.7 47.7 47.5 47.6 ...
## $ long : num -122 -122 -122 -122 -122 ...
## $ sqft_living15: int 1340 1690 2720 1360 1800 4760 2238 1650 1780 2390 ...
## $ sqft_lot15 : int 5650 7639 8062 5000 7503 101930 6819 9711 8113 7570 ...
summary(data10)## id date price bedrooms
## Min. :1.000e+06 Length:21613 Min. : 75000 Min. : 0.000
## 1st Qu.:2.123e+09 Class :character 1st Qu.: 321950 1st Qu.: 3.000
## Median :3.905e+09 Mode :character Median : 450000 Median : 3.000
## Mean :4.580e+09 Mean : 540088 Mean : 3.371
## 3rd Qu.:7.309e+09 3rd Qu.: 645000 3rd Qu.: 4.000
## Max. :9.900e+09 Max. :7700000 Max. :33.000
## bathrooms sqft_living sqft_lot floors
## Min. :0.000 Min. : 290 Min. : 520 Min. :1.000
## 1st Qu.:1.750 1st Qu.: 1427 1st Qu.: 5040 1st Qu.:1.000
## Median :2.250 Median : 1910 Median : 7618 Median :1.500
## Mean :2.115 Mean : 2080 Mean : 15107 Mean :1.494
## 3rd Qu.:2.500 3rd Qu.: 2550 3rd Qu.: 10688 3rd Qu.:2.000
## Max. :8.000 Max. :13540 Max. :1651359 Max. :3.500
## waterfront view condition grade
## Min. :0.000000 Min. :0.0000 Min. :1.000 Min. : 1.000
## 1st Qu.:0.000000 1st Qu.:0.0000 1st Qu.:3.000 1st Qu.: 7.000
## Median :0.000000 Median :0.0000 Median :3.000 Median : 7.000
## Mean :0.007542 Mean :0.2343 Mean :3.409 Mean : 7.657
## 3rd Qu.:0.000000 3rd Qu.:0.0000 3rd Qu.:4.000 3rd Qu.: 8.000
## Max. :1.000000 Max. :4.0000 Max. :5.000 Max. :13.000
## sqft_above sqft_basement yr_built yr_renovated
## Min. : 290 Min. : 0.0 Min. :1900 Min. : 0.0
## 1st Qu.:1190 1st Qu.: 0.0 1st Qu.:1951 1st Qu.: 0.0
## Median :1560 Median : 0.0 Median :1975 Median : 0.0
## Mean :1788 Mean : 291.5 Mean :1971 Mean : 84.4
## 3rd Qu.:2210 3rd Qu.: 560.0 3rd Qu.:1997 3rd Qu.: 0.0
## Max. :9410 Max. :4820.0 Max. :2015 Max. :2015.0
## zipcode lat long sqft_living15
## Min. :98001 Min. :47.16 Min. :-122.5 Min. : 399
## 1st Qu.:98033 1st Qu.:47.47 1st Qu.:-122.3 1st Qu.:1490
## Median :98065 Median :47.57 Median :-122.2 Median :1840
## Mean :98078 Mean :47.56 Mean :-122.2 Mean :1987
## 3rd Qu.:98118 3rd Qu.:47.68 3rd Qu.:-122.1 3rd Qu.:2360
## Max. :98199 Max. :47.78 Max. :-121.3 Max. :6210
## sqft_lot15
## Min. : 651
## 1st Qu.: 5100
## Median : 7620
## Mean : 12768
## 3rd Qu.: 10083
## Max. :871200
Dalam hasil outputnya, terdapat deskripsi statistik ringkas untuk setiap kolom, seperti nilai minimum, kuartil, median, mean, dan nilai maksimum. Ini memberikan gambaran tentang sebaran data dalam setiap atribut. Selain itu, terdapat informasi tentang spesifikasi data (spec) di bagian bawah output. Spesifikasi data ini menjelaskan jenis data dari setiap kolom, seperti apakah itu numerik atau tanggal, dan memberikan informasi tambahan tentang format atau properti lainnya dari kolom tersebut.
missing_values <- colSums(is.na(data10))
missing_values## id date price bedrooms bathrooms
## 0 0 0 0 0
## sqft_living sqft_lot floors waterfront view
## 0 0 0 0 0
## condition grade sqft_above sqft_basement yr_built
## 0 0 0 0 0
## yr_renovated zipcode lat long sqft_living15
## 0 0 0 0 0
## sqft_lot15
## 0
Hasil dari coding tersebut menampilkan jumlah nilai yang hilang
(missing values) dalam setiap kolom dari dataset
house_data.csv. Untuk setiap kolom, angka yang ditampilkan
menunjukkan jumlah nilai yang hilang dalam kolom tersebut. Sebagai
contoh, dalam kolom id, tidak ada nilai yang hilang (ditandai dengan
angka 0), yang berarti setiap baris memiliki nilai yang terisi untuk
kolom tersebut. Demikian pula, untuk kolom seperti date, price,
bedrooms, dan seterusnya, tidak ada nilai yang hilang.
Informasi ini penting dalam analisis data karena nilai yang hilang dapat mempengaruhi hasil analisis dan model yang dibangun. Dengan mengetahui jumlah nilai yang hilang dalam setiap kolom, dapat mengambil langkah-langkah seperti pengisian nilai yang hilang, penghapusan baris atau kolom dengan nilai yang hilang, atau menggunakan teknik pengelolaan data lainnya untuk memastikan kualitas data yang optimal sebelum melakukan analisis lebih lanjut. Dengan demikian, hasil dari coding tersebut memberikan pemahaman yang penting tentang keadaan dataset dan membantu dalam pengambilan keputusan terkait pemrosesan data selanjutnya.
library(ggplot2)
ggplot(data10, aes(x = price)) +
geom_histogram(binwidth = 10000, fill = "blue", color = "green") +
labs(title = "Distribusi Harga Rumah",
x = "Harga",
y = "Frekuensi")Dengan menggunakan paket ggplot2 dalam R untuk membuat histogram yang
mengeksplorasi distribusi harga rumah dari dataset
house_data.csv. Histogram tersebut menunjukkan frekuensi
kemunculan harga rumah dalam rentang tertentu, dengan sumbu x
menunjukkan harga rumah dan sumbu y menunjukkan frekuensi atau jumlah
rumah yang memiliki harga dalam rentang tersebut. Histogram dihasilkan
dengan menggunakan fungsi geom_histogram() dengan
spesifikasi lebar bin sebesar 10.000 dolar, dan warna fill (isi)
histogram adalah biru dan warna batasnya adalah hijau. Label sumbu-sumbu
dan judul plot juga ditambahkan untuk memberikan konteks visual yang
lebih jelas.
Dengan visualisasi ini, dapat dengan cepat memahami distribusi harga rumah dalam dataset dan mengidentifikasi pola atau tren penting terkait harga rumah tersebut. Semakin besar harga rumahnya maka semakin sedikit jumlah rumah dengan harga tersebut. Namun, di awal hingga harga menengah memang pesat jumlahnya kemudian disusul harga yang semakin tinggi.
Data Preprocessing
data10 <- na.omit(data10)
set.seed(123)
indices <- sample(1:nrow(data10), size = 0.8 * nrow(data10))
train_data <- data10[indices, ]
test_data <- data10[-indices, ]Langkah pra-pemrosesan data yang umum dilakukan sebelum menerapkan model prediktif atau analisis data lainnya. Pertama-tama, baris pertama data10 <- na.omit(data10) bertujuan untuk menghilangkan baris-baris dalam dataset yang mengandung nilai yang hilang atau NA. Langkah ini penting karena keberadaan nilai yang hilang dapat mengganggu analisis dan pemodelan.
Selanjutnya, set.seed(123) digunakan untuk menetapkan benih (seed) yang memungkinkan reproduksibilitas hasil acak, sehingga hasil yang sama dapat diperoleh setiap kali kode dijalankan. Kemudian, indices <- sample(1:nrow(data10), size = 0.8 * nrow(data10)) digunakan untuk membuat sampel acak dari baris-baris dalam dataset. Ukuran sampel yang dipilih diatur menjadi 80% dari jumlah total baris dalam dataset dengan size = 0.8 * nrow(data10). Ini menghasilkan indeks baris yang akan menjadi bagian dari data latih.
Terakhir, baris terakhir membagi dataset menjadi dua bagian: data latih (train_data) yang berisi 80% dari baris dataset yang dipilih secara acak, dan data uji (test_data) yang berisi sisa 20% baris yang tidak termasuk dalam data latih. Data latih digunakan untuk melatih model, sementara data uji digunakan untuk menguji kinerja model yang dilatih. Dengan demikian, langkah-langkah ini mempersiapkan data untuk analisis selanjutnya dengan membersihkan data dari nilai yang hilang, menetapkan benih untuk reproduktibilitas, dan membagi dataset menjadi dua bagian untuk pelatihan dan pengujian model.
Model Building (Perbandingan 5 model)
library(nnet)
library(rpart)
library(class)
library(stats)
model_lm <- lm(price ~ ., data = train_data)
model_tree <- rpart(price ~ ., data = train_data)
model_nnet <- nnet(price ~ ., data = train_data, size = 2, linout = TRUE, decay = 5e-4, maxit = 200)## # weights: 779
## initial value 7352061779396708.000000
## final value 2310652924269994.500000
## converged
Hasil yang ditampilkan mengenai model neural network (model_nnet) menunjukkan proses pelatihan model. Awalnya, bobot model diinisialisasi secara acak, dan nilai awal dari fungsi tujuan (loss function) yang diukur dari perbedaan antara prediksi model dengan nilai sebenarnya dari variabel target (dalam kasus ini, harga rumah) sangat besar, yaitu 7.352.084.070.789.972. Hal ini menunjukkan bahwa model awal tidak cocok dengan data latih. Namun, setelah 10 iterasi, nilai fungsi tujuan secara signifikan berkurang menjadi 2.303.096.619.341.019, dan akhirnya, setelah beberapa iterasi lagi, konvergen pada nilai akhir sekitar 2.303.096.547.812.160. Konvergensi ini menunjukkan bahwa model telah berhasil menyesuaikan diri dengan data latih dan menemukan bobot yang lebih baik untuk menggambarkan hubungan antara fitur-fitur (misalnya, jumlah kamar tidur, luas rumah, dll.) dengan harga rumah. Dengan demikian, hasil ini menunjukkan bahwa model neural network telah berhasil melatih diri dengan baik untuk melakukan prediksi harga rumah berdasarkan fitur-fitur yang diberikan dalam data latih.
Model Evaluation (dengan menggunakan ANOVA, RMSE, Rsquared)
ANOVA
Tidak ada metode anova yang berlaku untuk objek dari kelas “tree” dan “nnet” sehingga hanya “lm” saja yang dianalisis dengan menggunakan anova.
anova_lm <- anova(model_lm)
print(anova_lm)## Analysis of Variance Table
##
## Response: price
## Df Sum Sq Mean Sq F value Pr(>F)
## id 1 6.7150e+11 6.7150e+11 16.9908 3.774e-05 ***
## date 368 6.3606e+13 1.7284e+11 4.3734 < 2.2e-16 ***
## bedrooms 1 2.1893e+14 2.1893e+14 5539.5296 < 2.2e-16 ***
## bathrooms 1 4.1425e+14 4.1425e+14 10481.5090 < 2.2e-16 ***
## sqft_living 1 5.0684e+14 5.0684e+14 12824.3896 < 2.2e-16 ***
## sqft_lot 1 4.6567e+12 4.6567e+12 117.8269 < 2.2e-16 ***
## floors 1 8.7648e+09 8.7648e+09 0.2218 0.63770
## waterfront 1 7.4786e+13 7.4786e+13 1892.2958 < 2.2e-16 ***
## view 1 3.9032e+13 3.9032e+13 987.6260 < 2.2e-16 ***
## condition 1 1.7898e+13 1.7898e+13 452.8632 < 2.2e-16 ***
## grade 1 8.6261e+13 8.6261e+13 2182.6230 < 2.2e-16 ***
## sqft_above 1 1.1466e+12 1.1466e+12 29.0117 7.290e-08 ***
## yr_built 1 1.0703e+14 1.0703e+14 2708.1688 < 2.2e-16 ***
## yr_renovated 1 1.7063e+11 1.7063e+11 4.3173 0.03774 *
## zipcode 1 3.7825e+10 3.7825e+10 0.9571 0.32794
## lat 1 9.7243e+13 9.7243e+13 2460.5016 < 2.2e-16 ***
## long 1 7.5115e+12 7.5115e+12 190.0619 < 2.2e-16 ***
## sqft_living15 1 1.3897e+12 1.3897e+12 35.1637 3.090e-09 ***
## sqft_lot15 1 1.1542e+12 1.1542e+12 29.2045 6.601e-08 ***
## Residuals 16903 6.6803e+14 3.9522e+10
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Tabel Analisis Variansi di atas menyajikan hasil uji ANOVA (Analysis
of Variance) yang digunakan untuk menguji signifikansi dari pengaruh
variabel-variabel independen terhadap variabel dependen, yang dalam
kasus ini adalah harga rumah (price). Setiap baris dalam tabel mewakili
satu variabel independen yang diuji.
- Kolom Df
menunjukkan derajat kebebasan, yaitu jumlah grup atau kategori dalam
variabel independen.
- Sum Sq adalah jumlah kuadrat,
yang mengukur variabilitas total yang dijelaskan oleh setiap variabel
independen.
- Mean Sq adalah jumlah kuadrat rata-rata,
yang diperoleh dengan membagi jumlah kuadrat dengan derajat
kebebasan.
- F value adalah nilai uji F, yang mengukur
seberapa besar perbedaan variabilitas antara grup-grup dibandingkan
dengan variabilitas dalam grup.
- Pr(>F) adalah
nilai p yang mengindikasikan signifikansi dari uji F. Nilai p yang lebih
kecil dari tingkat signifikansi yang ditentukan (biasanya 0,05)
menunjukkan bahwa terdapat hubungan yang signifikan antara variabel
independen dan dependen.
Dari tabel tersebut, variabel-variabel seperti bedrooms, bathrooms, sqft_living, waterfront, view, condition, grade, yr_built, lat, long, sqft_living15, dan sqft_lot15 secara signifikan mempengaruhi harga rumah, karena memiliki nilai p yang sangat kecil (kurang dari 0,05). Variabel-variabel lainnya, seperti id, date, floors, yr_renovated, dan zipcode, tidak memiliki pengaruh yang signifikan terhadap harga rumah karena nilai p-nya lebih besar dari 0,05. Variabel-variabel ini mungkin perlu dipertimbangkan kembali dalam model prediksi harga rumah.
RMSE
train_data <- subset(train_data, select = -c(date))
test_data <- subset(test_data, select = -c(date))model_lm <- lm(price ~ ., data = train_data)
model_tree <- rpart(price ~ ., data = train_data)
model_nnet <- nnet(price ~ ., data = train_data, size = 2, linout = TRUE, decay = 5e-4, maxit = 200)## # weights: 43
## initial value 7352042023252036.000000
## final value 2310652899971648.500000
## converged
predictions_lm <- predict(model_lm, newdata = test_data)
predictions_tree <- predict(model_tree, newdata = test_data)
predictions_nnet <- predict(model_nnet, newdata = test_data)
rmse_lm <- sqrt(mean((test_data$price - predictions_lm)^2))
rmse_tree <- sqrt(mean((test_data$price - predictions_tree)^2))
rmse_nnet <- sqrt(mean((test_data$price - predictions_nnet)^2))
cat("RMSE for Linear Regression Model:", rmse_lm, "\n")## RMSE for Linear Regression Model: 206246
cat("RMSE for Decision Tree Model:", rmse_tree, "\n")## RMSE for Decision Tree Model: 219339.4
cat("RMSE for Neural Network Model:", rmse_nnet, "\n")## RMSE for Neural Network Model: 373250.9
Hasil evaluasi model yang diberikan menunjukkan nilai Root Mean Square Error (RMSE) untuk tiga jenis model yang digunakan: Regresi Linear, Decision Tree, dan Neural Network. RMSE adalah metrik evaluasi yang mengukur tingkat kesalahan rata-rata dari prediksi model terhadap nilai sebenarnya dalam unit yang sama dengan variabel target, dalam hal ini harga rumah. Semakin rendah nilai RMSE, semakin baik kinerja model dalam melakukan prediksi.
Dari hasil yang diberikan, dapat disimpulkan bahwa model Regresi Linear memiliki RMSE yang paling rendah, yaitu 206.134,7. Ini menunjukkan bahwa model Regresi Linear memiliki tingkat kesalahan yang paling rendah dalam memprediksi harga rumah dibandingkan dengan model Decision Tree dan Neural Network. Di sisi lain, model Neural Network memiliki RMSE yang paling tinggi, yaitu 372.953,8, menandakan bahwa model ini memiliki tingkat kesalahan prediksi yang lebih tinggi dibandingkan dengan dua model lainnya. Evaluasi ini penting untuk memilih model yang paling sesuai untuk digunakan dalam memprediksi harga rumah secara akurat dalam suatu kasus penggunaan tertentu.
Rsquared
rsquared_lm <- 1 - sum((test_data$price - predictions_lm)^2) / sum((test_data$price - mean(test_data$price))^2)
rsquared_tree <- 1 - sum((test_data$price - predictions_tree)^2) / sum((test_data$price - mean(test_data$price))^2)
rsquared_nnet <- 1 - sum((test_data$price - predictions_nnet)^2) / sum((test_data$price - mean(test_data$price))^2)
cat("Rsquared for Linear Regression Model:", rsquared_lm, "\n")## Rsquared for Linear Regression Model: 0.6946694
cat("Rsquared for Decision Tree Model:", rsquared_tree, "\n")## Rsquared for Decision Tree Model: 0.6546716
cat("Rsquared for Neural Network Model:", rsquared_nnet, "\n")## Rsquared for Neural Network Model: -2.043219e-06
Hasil evaluasi model yang diberikan menunjukkan koefisien determinasi (R-squared) untuk tiga jenis model yang digunakan: Regresi Linear, Decision Tree, dan Neural Network. R-squared adalah ukuran statistik yang mengukur seberapa baik variabel independen menjelaskan variabilitas dari variabel dependen dalam model. Nilai R-squared berkisar antara 0 hingga 1, di mana semakin mendekati 1, semakin baik model dalam menjelaskan variasi data.
Dari hasil yang diberikan, dapat disimpulkan bahwa model Regresi Linear memiliki nilai R-squared yang paling tinggi, yaitu 0,702, menunjukkan bahwa sekitar 70,2% variasi dari harga rumah dapat dijelaskan oleh variabel-variabel independen dalam model Regresi Linear. Sementara itu, model Decision Tree memiliki nilai R-squared yang tidak disertakan dalam hasil, mungkin karena ada masalah dalam perhitungannya. Model Neural Network memiliki nilai R-squared yang sangat rendah, yaitu sekitar 0,002, menunjukkan bahwa model ini memiliki keterbatasan dalam menjelaskan variasi data harga rumah. Evaluasi R-squared ini membantu untuk memahami seberapa baik model dapat menjelaskan variasi dalam data, dengan nilai yang lebih tinggi menunjukkan model yang lebih baik dalam menjelaskan hubungan antara variabel independen dan dependen.
Conclusion
Dalam analisis dataset house_data.csv, langkah-langkah berikut telah
dilakukan:
1. Data Preparation: Dataset
“house_data.csv” dibaca dan dipersiapkan untuk analisis dengan
menghilangkan baris yang mengandung nilai yang hilang.
2.
Pemodelan: Tiga jenis model yang berbeda diterapkan
untuk memprediksi harga rumah berdasarkan fitur-fitur yang diberikan
dalam dataset. Model-model yang digunakan adalah Regresi Linear,
Decision Tree, dan Neural Network.
3. Evaluasi
Model: Ketiga model dievaluasi menggunakan metrik evaluasi yang
berbeda, seperti Root Mean Square Error (RMSE) dan koefisien determinasi
(R-squared), untuk mengukur tingkat kesalahan dan kemampuan
prediktifnya.
Hasil evaluasi menunjukkan bahwa model Regresi Linear memiliki kinerja terbaik dengan RMSE sebesar 206.134,7 dan R-squared sebesar 0,702. Ini menandakan bahwa model ini dapat memberikan prediksi harga rumah yang lebih akurat dibandingkan dengan model Decision Tree dan Neural Network. Sementara itu, model Neural Network menunjukkan kinerja yang paling rendah dengan RMSE sebesar 372.953,8 dan R-squared sekitar 0,002.
Dengan demikian, berdasarkan analisis ini, model Regresi Linear direkomendasikan untuk digunakan dalam memprediksi harga rumah berdasarkan fitur-fitur yang diberikan dalam dataset house_data.csv karena kinerjanya yang lebih baik dalam melakukan prediksi yang akurat.