Ekonometrika
~ Pertemuan 10 ~
| Kontak | : \(\downarrow\) |
| diyasaryanugroho@gmail.com | |
| https://www.instagram.com/diasary_nm/ | |
| RPubs | https://rpubs.com/diyasarya/ |
Mendefenisikan Permasalahan
Perhitungan prediksi harga rumah dengan menggunakan variabel berikut.
1. ID : ID pembelian rumah
2. Date : Tanggal pembelian
rumah
3. Price : Harga rumah dalam satuan usd
4. Bedrooms :
Jumlah kamar tidur
5. Bathrooms : Jumlah kamar mandi
6.
Sqft_Living : Luas bangunan dalam satuan sqft
7. Sqft_Lot : Luat
tanah dalam satuan sqft
8. Floors : Jumlah lantai
9.
Waterfront : Terletak ditepi pantai, sungai, danau, atau laut (Ya = 1,
Tidak = 0)
10. View : Pemandangan dalam satuan likert (0-4, Kurang
Indah - Indah)
11. Condition : Kondisi rumah dalam satuan likert
(1-5, Kurang Baik - Sangat Baik)
13. Sqft_Above : Luas area di lantai atas rumah
14. Sqft_Basement :
Luas area di lantai bawah rumah
15. Yr_Built : Tahun dibangun
16. Yr_Renovated : Tahun direnovasi
17. Zipcode : Kode Pos
18.
Lat : Titik lintang
19. Long : Titik bujur
20. Sqft_Living15 :
Luas bangunan pada tahun 2015
21. Sqft_Lot15 : Luas tanah pada
tahun 2015
Dengan menggunakan informasi variabel diatas, akan dibuat model
untuk memprediksi harga rumah berdasarkan kriteria tertentu
Data Preparation
## Warning: package 'dplyr' was built under R version 4.1.3
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
Exploratory Data Analysis (EDA)
## '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 ...
## 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
## Warning: package 'corrplot' was built under R version 4.1.3
## corrplot 0.92 loaded
Data Preprocessing
## [1] FALSE
perumahan$date <- as.Date(perumahan$date, "%Y%m%dT000000") #Ubah format tanggal
perumahan$renov_stat <- ifelse(perumahan$yr_renovated>0, 1, 0) #Status Renovasi "Ya" atau "Tidak"
perumahan$renov_duration <- ifelse(perumahan$yr_renovated>0,perumahan$yr_renovated-perumahan$yr_built, 0) #Durasi renovasi sejak dibangun rumah
perumahan$bsmnt_stat <- ifelse(perumahan$sqft_basement>0, 1, 0) #Status Basement "Ya" atau "Tidak"
perumahan$waterfront <- as.factor(perumahan$waterfront) #Ubah menjadi kategorik
perumahan$view <- as.factor(perumahan$view) #Ubah menjadi kategorik
perumahan$condition <- as.factor(perumahan$condition) #Ubah menjadi kategorik
head(perumahan)Model Building (Perbandingan 5 model)
Model with condition indicator
model1 <- lm(price~condition * sqft_living +bathrooms +bedrooms +floors +grade +sqft_above +sqft_living15 +renov_duration, data = perumahan)
summary(model1)##
## Call:
## lm(formula = price ~ condition * sqft_living + bathrooms + bedrooms +
## floors + grade + sqft_above + sqft_living15 + renov_duration,
## data = perumahan)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1066524 -127769 -18410 94385 4578581
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -3.575e+05 1.012e+05 -3.532 0.000413 ***
## condition2 -1.240e+05 1.091e+05 -1.136 0.255887
## condition3 -2.210e+05 1.010e+05 -2.188 0.028710 *
## condition4 -2.143e+05 1.012e+05 -2.117 0.034247 *
## condition5 -2.656e+05 1.020e+05 -2.605 0.009192 **
## sqft_living 1.510e+02 7.484e+01 2.018 0.043579 *
## bathrooms -1.741e+04 3.626e+03 -4.802 1.58e-06 ***
## bedrooms -4.291e+04 2.221e+03 -19.321 < 2e-16 ***
## floors 1.720e+01 4.159e+03 0.004 0.996700
## grade 1.088e+05 2.462e+03 44.192 < 2e-16 ***
## sqft_above -4.696e+01 5.010e+00 -9.374 < 2e-16 ***
## sqft_living15 2.723e+01 3.943e+00 6.904 5.18e-12 ***
## renov_duration 3.001e+03 1.329e+02 22.571 < 2e-16 ***
## condition2:sqft_living 3.373e+01 7.927e+01 0.425 0.670496
## condition3:sqft_living 7.099e+01 7.469e+01 0.950 0.341883
## condition4:sqft_living 9.833e+01 7.476e+01 1.315 0.188445
## condition5:sqft_living 1.661e+02 7.497e+01 2.216 0.026725 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 239200 on 21596 degrees of freedom
## Multiple R-squared: 0.5759, Adjusted R-squared: 0.5756
## F-statistic: 1833 on 16 and 21596 DF, p-value: < 2.2e-16
- Persamaan regresi yang dihasilkan adalah Price = -3.575e+05
-1.240e+05Condition2 -2.210e+05Condition3 -2.143e+05Condition4
-2.656e+05Condition5 +1.510e+02Sqft_Living -1.741e+04Bathrooms
-4.291e+04Bedrooms +1.720e+01Floors +1.088e+05Grade -4.696e+01Sqft_Above
+2.723e+01Sqft_Living15 +3.001e+03Renov_Duration
+3.373e+01Sqft_Living(Condition2:SqftLiving)
+7.099e+01Sqft_Living(Condition3:SqftLiving)
+9.833e+01Sqft_Living(Condition4:SqftLiving)
+1.661e+02Sqft_Living(Condition5:SqftLiving)
- P-value <2.2e-16 yang berarti model yang dibangun signifikan
secara statistik
- R-squared = 0.5756 yang artinya 57,56% varians dari variabel
dependen mampu dijelaskan oleh variabel independen dalam model sedangkan
42,44% variabel dependen lainnya tidak dijelaskan dalam model
## Model with waterfront indicator
model2 <- lm(price~waterfront * sqft_living +bathrooms +bedrooms +floors +grade +sqft_above +sqft_living15 +renov_duration, data = perumahan)
summary(model2)##
## Call:
## lm(formula = price ~ waterfront * sqft_living + bathrooms + bedrooms +
## floors + grade + sqft_above + sqft_living15 + renov_duration,
## data = perumahan)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1512872 -127132 -20983 95632 4741280
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -5.330e+05 1.410e+04 -37.792 < 2e-16 ***
## waterfront1 -3.517e+05 4.029e+04 -8.729 < 2e-16 ***
## sqft_living 2.257e+02 4.788e+00 47.124 < 2e-16 ***
## bathrooms -2.008e+04 3.470e+03 -5.786 7.31e-09 ***
## bedrooms -2.982e+04 2.135e+03 -13.966 < 2e-16 ***
## floors -8.670e+03 3.915e+03 -2.215 0.0268 *
## grade 1.044e+05 2.351e+03 44.398 < 2e-16 ***
## sqft_above -6.251e+01 4.664e+00 -13.403 < 2e-16 ***
## sqft_living15 3.036e+01 3.791e+00 8.009 1.21e-15 ***
## renov_duration 2.503e+03 1.275e+02 19.630 < 2e-16 ***
## waterfront1:sqft_living 3.551e+02 1.142e+01 31.085 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 229800 on 21602 degrees of freedom
## Multiple R-squared: 0.6084, Adjusted R-squared: 0.6082
## F-statistic: 3356 on 10 and 21602 DF, p-value: < 2.2e-16
- Persamaan regresi yang dihasilkan adalah Price = -5.330e+05
-3.517e+05waterfront1 +2.257e+02Sqft_Living -2.008e+04Bathrooms
-2.982e+04Bedrooms -8.670e+03Floors +1.044e+05Grade -6.251e+01Sqft_Above
+3.036e+01Sqft_Living15 +2.503e+03Renov_Duration
+3.551e+01Sqft_Living(Waterfront1:SqftLiving)
- P-value <2.2e-16 yang berarti model yang dibangun signifikan
secara statistik
- R-squared = 0.6082 yang artinya 60,82% varians dari variabel
dependen mampu dijelaskan oleh variabel independen dalam model sedangkan
39,18% variabel dependen lainnya tidak dijelaskan dalam model
# Model with view indicator
model3 <- lm(price~view * sqft_living +bathrooms +bedrooms +floors +grade +sqft_above +sqft_living15 +renov_duration, data = perumahan)
summary(model3)##
## Call:
## lm(formula = price ~ view * sqft_living + bathrooms + bedrooms +
## floors + grade + sqft_above + sqft_living15 + renov_duration,
## data = perumahan)
##
## Residuals:
## Min 1Q Median 3Q Max
## -3146489 -121862 -19643 92452 4193462
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4.721e+05 1.412e+04 -33.436 < 2e-16 ***
## view1 -1.393e+05 3.384e+04 -4.117 3.86e-05 ***
## view2 -1.021e+05 1.933e+04 -5.280 1.31e-07 ***
## view3 -2.043e+05 2.778e+04 -7.354 1.99e-13 ***
## view4 -1.558e+05 3.109e+04 -5.011 5.45e-07 ***
## sqft_living 1.737e+02 5.058e+00 34.342 < 2e-16 ***
## bathrooms -1.680e+04 3.454e+03 -4.863 1.16e-06 ***
## bedrooms -2.413e+04 2.137e+03 -11.290 < 2e-16 ***
## floors -8.411e+03 3.896e+03 -2.159 0.0309 *
## grade 9.932e+04 2.345e+03 42.364 < 2e-16 ***
## sqft_above -2.959e+01 4.747e+00 -6.234 4.64e-10 ***
## sqft_living15 2.339e+01 3.829e+00 6.110 1.02e-09 ***
## renov_duration 2.417e+03 1.271e+02 19.016 < 2e-16 ***
## view1:sqft_living 1.154e+02 1.227e+01 9.403 < 2e-16 ***
## view2:sqft_living 8.043e+01 6.819e+00 11.796 < 2e-16 ***
## view3:sqft_living 1.301e+02 8.689e+00 14.976 < 2e-16 ***
## view4:sqft_living 2.219e+02 8.580e+00 25.859 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 228600 on 21596 degrees of freedom
## Multiple R-squared: 0.6125, Adjusted R-squared: 0.6122
## F-statistic: 2133 on 16 and 21596 DF, p-value: < 2.2e-16
- Persamaan regresi yang dihasilkan adalah Price = -4.721e+05
-1.393e+05View1 -1.021e+05View2 -2.043e+05View3 -1.558e+05View4
+1.737e+02Sqft_Living -1.680e+04Bathrooms -2.413e+04Bedrooms
-8.411e+03Floors +9.932e+04Grade -2.959e+01Sqft_Above
+2.339e+01Sqft_Living15 +2.417e+03Renov_Duration
+1.154e+01Sqft_Living(View1:SqftLiving)
+8.043e+01Sqft_Living(View2:SqftLiving)
+1.301e+01Sqft_Living(View3:SqftLiving)
+2.219e+02Sqft_Living(View4:SqftLiving)
- P-value <2.2e-16 yang berarti model yang dibangun signifikan
secara statistik
- R-squared = 0.6122 yang artinya 61,22% varians dari variabel
dependen mampu dijelaskan oleh variabel independen dalam model sedangkan
38,78% variabel dependen lainnya tidak dijelaskan dalam model
## Model with renov_stat indicator
model4 <- lm(price~renov_stat * sqft_living +bathrooms +bedrooms +floors +grade +sqft_above +sqft_living15 +renov_duration, data = perumahan)
summary(model4)##
## Call:
## lm(formula = price ~ renov_stat * sqft_living + bathrooms + bedrooms +
## floors + grade + sqft_above + sqft_living15 + renov_duration,
## data = perumahan)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1121547 -129179 -21133 95610 4560310
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -5.306e+05 1.476e+04 -35.945 < 2e-16 ***
## renov_stat -3.464e+05 2.757e+04 -12.566 < 2e-16 ***
## sqft_living 2.389e+02 5.025e+00 47.530 < 2e-16 ***
## bathrooms -2.380e+04 3.627e+03 -6.563 5.40e-11 ***
## bedrooms -3.751e+04 2.225e+03 -16.862 < 2e-16 ***
## floors -9.711e+03 4.095e+03 -2.371 0.0177 *
## grade 1.069e+05 2.460e+03 43.462 < 2e-16 ***
## sqft_above -6.886e+01 4.879e+00 -14.114 < 2e-16 ***
## sqft_living15 3.129e+01 3.962e+00 7.896 3.01e-15 ***
## renov_duration 1.483e+03 3.327e+02 4.456 8.40e-06 ***
## renov_stat:sqft_living 1.892e+02 7.615e+00 24.840 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 240200 on 21602 degrees of freedom
## Multiple R-squared: 0.572, Adjusted R-squared: 0.5718
## F-statistic: 2887 on 10 and 21602 DF, p-value: < 2.2e-16
- Persamaan regresi yang dihasilkan adalah Price = -5.306e+05
-3.464e+05renov_stat +2.389e+02Sqft_Living -2.380e+04Bathrooms
-3.751e+04Bedrooms -9.711e+03Floors +1.069e+05Grade -6.886e+01Sqft_Above
+3.129e+01Sqft_Living15 +1.483e+03Renov_Duration
+1.892e+01Sqft_Living(Renov_Stat:Sqft_Living)
- P-value <2.2e-16 yang berarti model yang dibangun signifikan
secara statistik
- R-squared = 0.5718 yang artinya 57,18% varians dari variabel
dependen mampu dijelaskan oleh variabel independen dalam model sedangkan
42,82% variabel dependen lainnya tidak dijelaskan dalam model
## Model with bsmnt_stat indicator
model5 <- lm(price~bsmnt_stat * sqft_living +bathrooms +bedrooms +floors +grade +sqft_above +sqft_living15 +renov_duration, data = perumahan)
summary(model5)##
## Call:
## lm(formula = price ~ bsmnt_stat * sqft_living + bathrooms + bedrooms +
## floors + grade + sqft_above + sqft_living15 + renov_duration,
## data = perumahan)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1445953 -123504 -19244 94140 4014469
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -4.719e+05 1.467e+04 -32.166 < 2e-16 ***
## bsmnt_stat -1.903e+05 8.577e+03 -22.185 < 2e-16 ***
## sqft_living -1.389e+01 1.021e+01 -1.361 0.174
## bathrooms -2.287e+04 3.601e+03 -6.353 2.16e-10 ***
## bedrooms -3.091e+04 2.208e+03 -13.998 < 2e-16 ***
## floors -1.945e+04 4.050e+03 -4.802 1.58e-06 ***
## grade 1.051e+05 2.438e+03 43.108 < 2e-16 ***
## sqft_above 1.487e+02 9.751e+00 15.254 < 2e-16 ***
## sqft_living15 3.685e+01 3.916e+00 9.411 < 2e-16 ***
## renov_duration 2.508e+03 1.315e+02 19.073 < 2e-16 ***
## bsmnt_stat:sqft_living 1.621e+02 4.629e+00 35.012 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 237100 on 21602 degrees of freedom
## Multiple R-squared: 0.583, Adjusted R-squared: 0.5828
## F-statistic: 3020 on 10 and 21602 DF, p-value: < 2.2e-16
- Persamaan regresi yang dihasilkan adalah Price = -4.719e+05
-1.903e+05Bsmnt_Stat -1.389e+01Sqft_Living -2.287e+04Bathrooms
-3.091e+04Bedrooms -1.945e+01Floors +1.051e+05Grade +1.487e+02Sqft_Above
+3.685e+01Sqft_Living15 +2.508e+03Renov_Duration
+1.621e+02Sqft_Living(Bsmnt_Stat:SqftLiving)
- P-value <2.2e-16 yang berarti model yang dibangun signifikan
secara statistik
- R-squared = 0.5828 yang artinya 58,28% varians dari variabel
dependen mampu dijelaskan oleh variabel independen dalam model sedangkan
41,72% variabel dependen lainnya tidak dijelaskan dalam model
Perbandingan 5 Model
library(stargazer)
stargazer(model1, model2, model3, header=FALSE,
type='text',
title="Perbandingan Model",
keep.stat="n", digits=2, single.row=TRUE,
intercept=FALSE)##
## Perbandingan Model
## =========================================================================================================
## Dependent variable:
## ---------------------------------------------------------------------------------
## price
## (1) (2) (3)
## ---------------------------------------------------------------------------------------------------------
## condition2 -123,984.90 (109,122.80)
## condition3 -220,971.30** (101,011.10)
## condition4 -214,275.10** (101,202.60)
## condition5 -265,638.00*** (101,969.30)
## waterfront1 -351,670.00*** (40,289.77)
## view1 -139,302.60*** (33,839.96)
## view2 -102,058.50*** (19,329.93)
## view3 -204,294.00*** (27,779.45)
## view4 -155,803.10*** (31,089.78)
## sqft_living 151.04** (74.84) 225.65*** (4.79) 173.71*** (5.06)
## bathrooms -17,414.64*** (3,626.18) -20,076.53*** (3,469.82) -16,797.89*** (3,454.00)
## bedrooms -42,907.32*** (2,220.75) -29,815.59*** (2,134.81) -24,125.66*** (2,136.82)
## floors 17.20 (4,158.85) -8,670.00** (3,914.79) -8,410.94** (3,895.83)
## grade 108,786.70*** (2,461.67) 104,400.60*** (2,351.48) 99,324.50*** (2,344.57)
## sqft_above -46.96*** (5.01) -62.51*** (4.66) -29.59*** (4.75)
## sqft_living15 27.23*** (3.94) 30.36*** (3.79) 23.39*** (3.83)
## renov_duration 3,000.75*** (132.95) 2,502.60*** (127.49) 2,417.07*** (127.11)
## condition2:sqft_living 33.73 (79.27)
## condition3:sqft_living 70.99 (74.69)
## condition4:sqft_living 98.33 (74.76)
## condition5:sqft_living 166.11** (74.97)
## waterfront1:sqft_living 355.10*** (11.42)
## view1:sqft_living 115.41*** (12.27)
## view2:sqft_living 80.43*** (6.82)
## view3:sqft_living 130.12*** (8.69)
## view4:sqft_living 221.86*** (8.58)
## Constant -357,459.10*** (101,195.90) -533,045.20*** (14,104.80) -472,116.80*** (14,120.14)
## ---------------------------------------------------------------------------------------------------------
## Observations 21,613 21,613 21,613
## =========================================================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
## Perbandingan Model
## =====
## FALSE
## -----
stargazer(model4, model5, header=FALSE,
type='text',
title="Perbandingan Model",
keep.stat="n", digits=2, single.row=TRUE,
intercept=FALSE)##
## Perbandingan Model
## ============================================================================
## Dependent variable:
## -----------------------------------------------------
## price
## (1) (2)
## ----------------------------------------------------------------------------
## renov_stat -346,421.20*** (27,567.19)
## bsmnt_stat -190,272.00*** (8,576.63)
## sqft_living 238.85*** (5.03) -13.89 (10.21)
## bathrooms -23,802.98*** (3,627.00) -22,873.09*** (3,600.56)
## bedrooms -37,512.67*** (2,224.75) -30,908.89*** (2,208.05)
## floors -9,710.69** (4,095.30) -19,446.96*** (4,050.13)
## grade 106,927.60*** (2,460.24) 105,104.50*** (2,438.15)
## sqft_above -68.86*** (4.88) 148.74*** (9.75)
## sqft_living15 31.28*** (3.96) 36.85*** (3.92)
## renov_duration 1,482.53*** (332.71) 2,507.57*** (131.47)
## renov_stat:sqft_living 189.16*** (7.62)
## bsmnt_stat:sqft_living 162.05*** (4.63)
## Constant -530,578.50*** (14,761.03) -471,864.60*** (14,669.61)
## ----------------------------------------------------------------------------
## Observations 21,613 21,613
## ============================================================================
## Note: *p<0.1; **p<0.05; ***p<0.01
##
## Perbandingan Model
## =====
## FALSE
## -----
Model Evaluation (dengan menggunakan ANOVA, RMSE, Rsquared)
model1MAPE <- mean(abs(model1$residuals/model1$fitted.values))
model2MAPE <- mean(abs(model2$residuals/model2$fitted.values))
model3MAPE <- mean(abs(model3$residuals/model3$fitted.values))
model4MAPE <- mean(abs(model4$residuals/model4$fitted.values))
model5MAPE <- mean(abs(model5$residuals/model5$fitted.values))
model1Rsquared <- summary(model1)$r.squared
model2Rsquared <- summary(model2)$r.squared
model3Rsquared <- summary(model3)$r.squared
model4Rsquared <- summary(model4)$r.squared
model5Rsquared <- summary(model5)$r.squared
data.frame(Model = c(1:5),
MAPE = c(model1MAPE, model2MAPE, model3MAPE, model4MAPE, model5MAPE),
Rsquare = c(model1Rsquared, model2Rsquared, model3Rsquared, model4Rsquared, model5Rsquared))Mean Absolute Percentage Error (MAPE) suatu cara untuk mengevaluasi
sebuah model dengan mengukur tingkat persentase kesalahan relatif dari
suatu model yang dibangun. Nilai MAPE yang mendekati 0% artinya model
tersebut memiliki tingkat kesalahan yang rendah begitupun sebaliknya.
R-Squared adalah salah satu cara mengevaluasi sebuah model dengan
melihat seberapa baik kualitas model cocok dalam data yang diamati.
Nilai R-Square yang semakin mendekati 1 maka model tersebut cocok atau
mampu menjelaskan seluruh varians dalam variabel dependen begitupun
sebaliknya.
Berdasarkan perbandingan kelima model yang sudah dibangun model
3 menunjukkan persentase tingkat kesalahannya lebih kecil dibanding yang
lain yaitu 0.3176 atau 31,76% dengan R-Square yang tertinggi yaitu
0.6124 atau 61,24%.
Conclusion
Untuk memprediksi harga rumah dengan menggunakan model view sebagai variabel kategorik menghasilkan error terkecil dibandingkan model yang lain yaitu MAPE sebesar 31,76%. Akan tetapi, nilai MAPE yang dihasilkan cukup tinggi hal ini dikarenakan masih butuh variabel dependen lain sebagai analisis untuk prediksi harga rumah. Seperti yang dihasilkan pada R-Square sebesar 61,24% yang dimana bahwa terdapat 38,76% variabel dependen lainnya yang perlu diperhatikan untuk melakukan prediksi harga rumah yang lebih akurat. Pada analisis kali ini model yang dibangun masing-masing hanya menggunakan satu variabel kategorik, untuk analisis lebih lanjut bisa menggunakan kombinasi variabel kategorik lebih dari satu.