Econometrics

Assignment 2


Kontak : \(\downarrow\)
Email
Instagram https://www.instagram.com/arifin.alicia/
RPubs https://rpubs.com/aliciaarifin/
Nama Alicia Arifin
NIM 20214920001
Prodi Statistika, 2021

Tugas Pertemuan 10

Dataset

library(dplyr)
setwd(getwd())
house_data = read.csv("house_data.csv")

head(house_data)
count(house_data)

Data rumah di atas merupakan dataset harga perumahan. Data tersebut akan digunakan untuk memprediksi harga rumah. Data penjualan rumah terdapat 21613 dataset. tipe data variabel-variabelnya adalah integer dan numeric (double). Pada data ini ada variabel yang tidak cocok tipe datanya seperti harga (price) yang dalam bentuk integer. Maka kita lanjut ke pembersihan data.

house_data$date = as.Date(house_data$date, "%Y%m%dT000000") # mengganti format tanggal
count(na.omit(house_data)) # mengeluarkan semua NA
summary(house_data)
##        id                 date                price            bedrooms     
##  Min.   :1.000e+06   Min.   :2014-05-02   Min.   :  75000   Min.   : 0.000  
##  1st Qu.:2.123e+09   1st Qu.:2014-07-22   1st Qu.: 321950   1st Qu.: 3.000  
##  Median :3.905e+09   Median :2014-10-16   Median : 450000   Median : 3.000  
##  Mean   :4.580e+09   Mean   :2014-10-29   Mean   : 540088   Mean   : 3.371  
##  3rd Qu.:7.309e+09   3rd Qu.:2015-02-17   3rd Qu.: 645000   3rd Qu.: 4.000  
##  Max.   :9.900e+09   Max.   :2015-05-27   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

Dari hasil SUmmary, dapat dipastikan bahwa sepertinya terdapat variabel yang bisa dijadikan factor, seperti condition dan waterfront. dari hasil summary juga bisa dikatakan lattitude dan lontitude (titik koordinat lokasi) yang tidak berbeda jauh antara nilai minimum dan maksimum, yang berarti bahwa titik perumahan masih di daerah yang sama. sehingga kita bisa hilangkan variabel longtitude, latitude dan zipcode dari model yang akan dibuat nantinya. Pada hasil summary juga tidak ditemukan NA pada data.

unique(house_data$view)
## [1] 0 3 4 2 1
unique(house_data$condition)
## [1] 3 5 4 1 2
unique(house_data$waterfront)
## [1] 0 1
house_data = house_data%>%
  mutate_at(c("id","condition","view","zipcode","waterfront"),as.factor)

house_data=house_data[,-c(1,2,17,18,19)]

Setelah semua tipe data rapihkan, maka akan dilanjutkan dengan analisis variabelnya. Pada prediksi data rumah ini, kita akan coba menambahkan variabel baru sudah direnov atau beum dan jika iya berapa sudah berapa lama.

house_data$renovated = as.factor(ifelse(house_data$yr_renovated == 0, "No", "Yes"))
house_data$basement = as.factor(ifelse(house_data$sqft_basement == 0, "No", "Yes"))
library(data.table)
data.table(house_data)

Penetuan variabel-variabel independen + Model Building

# mencoba semua variabel
model1 = lm(price~., data=house_data)
summary(model1)
## 
## Call:
## lm(formula = price ~ ., data = house_data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1257933  -109270   -10040    89589  4384344 
## 
## Coefficients: (1 not defined because of singularities)
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    6.229e+06  1.410e+05  44.172  < 2e-16 ***
## bedrooms      -3.904e+04  2.019e+03 -19.331  < 2e-16 ***
## bathrooms      4.346e+04  3.516e+03  12.363  < 2e-16 ***
## sqft_living    1.537e+02  6.607e+00  23.267  < 2e-16 ***
## sqft_lot       1.108e-02  5.112e-02   0.217   0.8284    
## floors         2.724e+04  3.784e+03   7.201 6.19e-13 ***
## waterfront1    4.934e+05  2.107e+04  23.414  < 2e-16 ***
## view1          1.050e+05  1.205e+04   8.713  < 2e-16 ***
## view2          4.999e+04  7.319e+03   6.831 8.66e-12 ***
## view3          1.049e+05  1.005e+04  10.444  < 2e-16 ***
## view4          2.918e+05  1.543e+04  18.908  < 2e-16 ***
## condition2    -1.516e+04  4.265e+04  -0.355   0.7223    
## condition3    -1.925e+04  3.954e+04  -0.487   0.6263    
## condition4    -4.602e+03  3.954e+04  -0.116   0.9073    
## condition5     3.398e+04  3.978e+04   0.854   0.3930    
## grade          1.187e+05  2.261e+03  52.474  < 2e-16 ***
## sqft_above     9.624e+00  7.274e+00   1.323   0.1859    
## sqft_basement         NA         NA      NA       NA    
## yr_built      -3.546e+03  7.166e+01 -49.480  < 2e-16 ***
## yr_renovated   3.336e+03  4.628e+02   7.207 5.89e-13 ***
## sqft_living15  2.536e+01  3.593e+00   7.056 1.76e-12 ***
## sqft_lot15    -5.381e-01  7.804e-02  -6.895 5.53e-12 ***
## renovatedYes  -6.637e+06  9.236e+05  -7.186 6.90e-13 ***
## basementYes    1.333e+04  5.590e+03   2.384   0.0171 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 215200 on 21590 degrees of freedom
## Multiple R-squared:  0.6569, Adjusted R-squared:  0.6565 
## F-statistic:  1879 on 22 and 21590 DF,  p-value: < 2.2e-16
# numeric variabels
model2 = lm(price~bedrooms + bathrooms + sqft_living + sqft_lot + floors +grade +sqft_above+ sqft_basement + yr_built +yr_renovated +sqft_living15 + sqft_lot15, data=house_data)
summary(model2)
## 
## Call:
## lm(formula = price ~ bedrooms + bathrooms + sqft_living + sqft_lot + 
##     floors + grade + sqft_above + sqft_basement + yr_built + 
##     yr_renovated + sqft_living15 + sqft_lot15, data = house_data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1276474  -116793   -12013    90605  4443865 
## 
## Coefficients: (1 not defined because of singularities)
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    7.088e+06  1.341e+05  52.839  < 2e-16 ***
## bedrooms      -4.813e+04  2.110e+03 -22.814  < 2e-16 ***
## bathrooms      4.930e+04  3.653e+03  13.496  < 2e-16 ***
## sqft_living    1.968e+02  4.810e+00  40.919  < 2e-16 ***
## sqft_lot       8.293e-03  5.374e-02   0.154    0.877    
## floors         2.973e+04  3.949e+03   7.529 5.32e-14 ***
## grade          1.245e+05  2.349e+03  52.976  < 2e-16 ***
## sqft_above    -3.106e+01  4.672e+00  -6.649 3.03e-11 ***
## sqft_basement         NA         NA      NA       NA    
## yr_built      -4.013e+03  7.034e+01 -57.046  < 2e-16 ***
## yr_renovated   1.837e+01  4.036e+00   4.552 5.34e-06 ***
## sqft_living15  3.652e+01  3.740e+00   9.764  < 2e-16 ***
## sqft_lot15    -5.005e-01  8.213e-02  -6.094 1.12e-09 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 226600 on 21601 degrees of freedom
## Multiple R-squared:  0.6193, Adjusted R-squared:  0.6191 
## F-statistic:  3194 on 11 and 21601 DF,  p-value: < 2.2e-16
# categoric variabels
model3 = lm(price~ waterfront + view + condition+ renovated +basement,  data=house_data)
anova(model3)

Pada hasil anova dan regresi linear sederhana di atas, didapatkan bahwa terdapat variabel independen numerik yang tidak memiliki pengaruh siknifikan adalah sqft_lot dan sqft_basement. Semua variabel independen kategorik memiliki pengaruh siknifikan terhadap harga rumah.
Dari hasil Anova, dikatakan bahwa setiap variabel independen memiliki pengaruh siknifikan secara statistik terhadap price.
Jadi variabel yang akan digunakan adalah bedroom, bathroom, sqft_living, floors, grade, sqft_above, yr_built, yr_renovated, sqft_living15, sqft_lot15, waterfront, view, condition, renovated, dan basement.
price ~ bedrooms + bathrooms + sqft_living + floors +grade + yr_built + yr_renovated + sqft_living15 + sqft_lot15 + waterfront + view + renovated + basement

lm_model = lm(price ~ bedrooms + bathrooms + sqft_living + floors +grade + yr_built + yr_renovated + sqft_living15 + sqft_lot15 + waterfront + view + renovated + basement, data = house_data)
summary(lm_model)
## 
## Call:
## lm(formula = price ~ bedrooms + bathrooms + sqft_living + floors + 
##     grade + yr_built + yr_renovated + sqft_living15 + sqft_lot15 + 
##     waterfront + view + renovated + basement, data = house_data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1271971  -109554   -10150    90330  4363671 
## 
## Coefficients:
##                 Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    6.612e+06  1.290e+05  51.259  < 2e-16 ***
## bedrooms      -3.853e+04  2.019e+03 -19.085  < 2e-16 ***
## bathrooms      4.644e+04  3.505e+03  13.252  < 2e-16 ***
## sqft_living    1.614e+02  3.612e+00  44.680  < 2e-16 ***
## floors         2.582e+04  3.617e+03   7.138 9.75e-13 ***
## grade          1.188e+05  2.235e+03  53.147  < 2e-16 ***
## yr_built      -3.747e+03  6.773e+01 -55.324  < 2e-16 ***
## yr_renovated   3.097e+03  4.622e+02   6.700 2.13e-11 ***
## sqft_living15  2.499e+01  3.565e+00   7.009 2.48e-12 ***
## sqft_lot15    -5.161e-01  5.571e-02  -9.265  < 2e-16 ***
## waterfront1    4.940e+05  2.111e+04  23.406  < 2e-16 ***
## view1          1.048e+05  1.207e+04   8.685  < 2e-16 ***
## view2          4.971e+04  7.318e+03   6.794 1.12e-11 ***
## view3          1.037e+05  9.995e+03  10.370  < 2e-16 ***
## view4          2.927e+05  1.538e+04  19.027  < 2e-16 ***
## renovatedYes  -6.173e+06  9.226e+05  -6.691 2.28e-11 ***
## basementYes    7.714e+03  3.486e+03   2.213   0.0269 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 215500 on 21596 degrees of freedom
## Multiple R-squared:  0.6556, Adjusted R-squared:  0.6553 
## F-statistic:  2569 on 16 and 21596 DF,  p-value: < 2.2e-16
lm_model$coefficients
##   (Intercept)      bedrooms     bathrooms   sqft_living        floors 
##  6.612183e+06 -3.853364e+04  4.644214e+04  1.614018e+02  2.581577e+04 
##         grade      yr_built  yr_renovated sqft_living15    sqft_lot15 
##  1.187957e+05 -3.746848e+03  3.097145e+03  2.498875e+01 -5.161364e-01 
##   waterfront1         view1         view2         view3         view4 
##  4.940066e+05  1.047943e+05  4.971265e+04  1.036507e+05  2.927172e+05 
##  renovatedYes   basementYes 
## -6.172789e+06  7.713568e+03

Persamaan Regresi lm_model :

price = 6612183 - 38533.64 bedrooms + 46442.14 bathrooms + 161.4018 sqft_living + 25815.77 floors + 118795.7 grade - 3746.848 yr_built + 3097.145 yr_renovated + 24.98875 sqft_living15 - 0.5161364 sqft_lot15 + waterfront + view + Renovated + basement Note (for Categorical Independent Variabels) : + waterfront ++ If 1 Add 494006.6 to equation ++ If 0 Add nothing to equation
+ view ++ If 1 Add 104794.3 to equation ++ If 2 Add 49712.65 to equation ++ If 3 Add 103650.7 to equation ++ If 4 Add 292717.2 to equation ++ If 5 add nothing
+ renovated ++ If Yes Add -6172789 to equation ++ If No add nothing to equation
+ basement ++ If have a basement Add 7713568 ++ If didn’t have basement add nothing.

library(lmtest)
raintest(lm_model)
## 
##  Rainbow test
## 
## data:  lm_model
## Rain = 1.1052, df1 = 10807, df2 = 10789, p-value = 1.016e-07
bptest(lm_model)
## 
##  studentized Breusch-Pagan test
## 
## data:  lm_model
## BP = 2863.2, df = 16, p-value < 2.2e-16
  • Heteroskedasitas (Bptest) ++ H0 : Homogen ++ H1 : Heteroskedasitas +++ p-value BP-Test < alpha 0.05, maka H0 ditolak, Data heteroskedasitas.
  • Linear (Rainbow test) ++ Linear ++ Nonlinear +++ p-value Rainbow Test <alpha 0.05, H0 ditolak, Data cocok untuk regresi nonlinear.
    Karena data merupakan heterogen dan nonlinear, maka adan dicoba dimanipulasi sehingga data menjadi homogen menggunakan di-log-an variabel numeriknya. Khusus bedrooms, bathrooms dan yr_renovated tidak diubah karena memiliki angka 0. Dan akan coba diuji kembali linear dan heteroskedasitasnya.
lm_model1 = lm(log(price) ~ bedrooms + bathrooms + log(sqft_living) + log(floors) + log(grade) + log(yr_built) + yr_renovated + log(sqft_living15) + log(sqft_lot15) + waterfront + view + renovated + basement, data = house_data)
summary(lm_model1)
## 
## Call:
## lm(formula = log(price) ~ bedrooms + bathrooms + log(sqft_living) + 
##     log(floors) + log(grade) + log(yr_built) + yr_renovated + 
##     log(sqft_living15) + log(sqft_lot15) + waterfront + view + 
##     renovated + basement, data = house_data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.49365 -0.20223  0.01257  0.20285  2.71465 
## 
## Coefficients:
##                      Estimate Std. Error t value Pr(>|t|)    
## (Intercept)         9.568e+01  1.422e+00  67.267  < 2e-16 ***
## bedrooms           -3.551e-02  3.002e-03 -11.830  < 2e-16 ***
## bathrooms           8.257e-02  4.936e-03  16.727  < 2e-16 ***
## log(sqft_living)    2.882e-01  1.178e-02  24.471  < 2e-16 ***
## log(floors)         1.059e-01  8.681e-03  12.195  < 2e-16 ***
## log(grade)          1.572e+00  2.390e-02  65.776  < 2e-16 ***
## log(yr_built)      -1.184e+01  1.883e-01 -62.863  < 2e-16 ***
## yr_renovated        3.835e-03  6.626e-04   5.788 7.21e-09 ***
## log(sqft_living15)  2.830e-01  1.061e-02  26.683  < 2e-16 ***
## log(sqft_lot15)    -4.893e-02  3.192e-03 -15.329  < 2e-16 ***
## waterfront1         3.643e-01  3.029e-02  12.027  < 2e-16 ***
## view1               1.500e-01  1.730e-02   8.674  < 2e-16 ***
## view2               8.368e-02  1.048e-02   7.987 1.45e-15 ***
## view3               1.197e-01  1.428e-02   8.382  < 2e-16 ***
## view4               2.591e-01  2.199e-02  11.784  < 2e-16 ***
## renovatedYes       -7.654e+00  1.323e+00  -5.787 7.27e-09 ***
## basementYes         5.275e-02  5.309e-03   9.936  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3089 on 21596 degrees of freedom
## Multiple R-squared:  0.6562, Adjusted R-squared:  0.6559 
## F-statistic:  2576 on 16 and 21596 DF,  p-value: < 2.2e-16
raintest(lm_model1)
## 
##  Rainbow test
## 
## data:  lm_model1
## Rain = 1.0058, df1 = 10807, df2 = 10789, p-value = 0.3824
bptest(lm_model1)
## 
##  studentized Breusch-Pagan test
## 
## data:  lm_model1
## BP = 289.04, df = 16, p-value < 2.2e-16

summary lm_model1 :
Model memiliki p-value < alpha 0.05, setidaknya terdapat satu variabel yang memiliki pengaruh siknifikan terhadap Y. Memiliki Multple R-Square sebesar 0.6562, yang berarti terdapat 65.62% variansi variabel independen sudah masuk kedalam model. Semua Variabel independen memiliki pengaruh siknifikan di alpha 0, yang berarti sangat berpengaruh. Pada hasil uji linearitas(rainbow) dan heteroskedasitas(BP-test), Rainbow test memiliki nilai p-value 0.38 yang berarti lebih dari alpha 0.05, yang mengatakan linear. sedangkan pada test BP p-value<0.05 (terdapat heteroskedasitas).
Perlu diingat bahwa lm_model1 menggunakan transformasi log. Hasil dari prediksi lm_model1 masih dalam bentuk log(price), yang mana perlu ditransformasi kembali ke bentuk awal.

Comparing Model

library(stargazer)
stargazer(lm_model,lm_model1, header=F,
          type="text",
          title='model comparison',
          keep.stat = "n", digits=3, single.row = TRUE,
          intercept.bottom = F)
## 
## model comparison
## =====================================================================
##                                   Dependent variable:                
##                    --------------------------------------------------
##                                 price                  log(price)    
##                                  (1)                      (2)        
## ---------------------------------------------------------------------
## Constant           6,612,183.000*** (128,994.500)  95.684*** (1.422) 
## bedrooms             -38,533.640*** (2,019.048)    -0.036*** (0.003) 
## bathrooms             46,442.140*** (3,504.634)     0.083*** (0.005) 
## sqft_living              161.402*** (3.612)                          
## floors                25,815.770*** (3,616.510)                      
## grade                118,795.700*** (2,235.229)                      
## yr_built               -3,746.848*** (67.726)                        
## log(sqft_living)                                    0.288*** (0.012) 
## log(floors)                                         0.106*** (0.009) 
## log(grade)                                          1.572*** (0.024) 
## log(yr_built)                                      -11.840*** (0.188)
## yr_renovated           3,097.145*** (462.236)       0.004*** (0.001) 
## sqft_living15             24.989*** (3.565)                          
## sqft_lot15                -0.516*** (0.056)                          
## log(sqft_living15)                                  0.283*** (0.011) 
## log(sqft_lot15)                                    -0.049*** (0.003) 
## waterfront1          494,006.600*** (21,106.180)    0.364*** (0.030) 
## view1                104,794.300*** (12,066.820)    0.150*** (0.017) 
## view2                 49,712.650*** (7,317.563)     0.084*** (0.010) 
## view3                103,650.700*** (9,994.865)     0.120*** (0.014) 
## view4                292,717.200*** (15,384.280)    0.259*** (0.022) 
## renovatedYes       -6,172,789.000*** (922,616.400) -7.654*** (1.323) 
## basementYes            7,713.568** (3,485.918)      0.053*** (0.005) 
## ---------------------------------------------------------------------
## Observations                   21,613                    21,613      
## =====================================================================
## Note:                                     *p<0.1; **p<0.05; ***p<0.01

perbandingan antara lm_model1 dan lm_model
## MAPE

MAPE adalah mean absolute square error. MAPE dipresentasikan dalam bentuk persentasi.

MAPE_lm  = mean(abs(lm_model$residual/lm_model$fitted.values))*100 ; MAPE_lm
## [1] 32.14976
MAPE_lm1 = mean(abs(lm_model1$residual/lm_model1$fitted.values))*100 ; MAPE_lm1
## [1] 1.869844

Jika dilihat dari MAPE kedua linear model, MAPE lm_model1 meiliki nilai error sebesar 1.87% dan lm_model sebesar 32.15%. Akurasi prediksi lebih bagus menggunakan model lm_model1.

R-Square

model lm_model M.R-Square adalah 0,6556 dan lm_model1 memiliki M.R-Square 0.6562. Hal ini yang berarti adalah model lm_model1 dapat menjelaskan 0,08% variansi variabel independen lebih banyak. Model lm_model1 akan digunakan karena variabel yang digunakan lebih memiliki pengaruh siknifikan (alpha=0) dan meskipun datanya tetap memiliki heteroskedasitas, pada model lm_model1 sudah linear dan cocok pada model. lm_model datanya merupakan data non linear.
Maka dari itu, model yang akan digunakan adalah model lm_model1.

Kesimpulan

summary(lm_model1)
## 
## Call:
## lm(formula = log(price) ~ bedrooms + bathrooms + log(sqft_living) + 
##     log(floors) + log(grade) + log(yr_built) + yr_renovated + 
##     log(sqft_living15) + log(sqft_lot15) + waterfront + view + 
##     renovated + basement, data = house_data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.49365 -0.20223  0.01257  0.20285  2.71465 
## 
## Coefficients:
##                      Estimate Std. Error t value Pr(>|t|)    
## (Intercept)         9.568e+01  1.422e+00  67.267  < 2e-16 ***
## bedrooms           -3.551e-02  3.002e-03 -11.830  < 2e-16 ***
## bathrooms           8.257e-02  4.936e-03  16.727  < 2e-16 ***
## log(sqft_living)    2.882e-01  1.178e-02  24.471  < 2e-16 ***
## log(floors)         1.059e-01  8.681e-03  12.195  < 2e-16 ***
## log(grade)          1.572e+00  2.390e-02  65.776  < 2e-16 ***
## log(yr_built)      -1.184e+01  1.883e-01 -62.863  < 2e-16 ***
## yr_renovated        3.835e-03  6.626e-04   5.788 7.21e-09 ***
## log(sqft_living15)  2.830e-01  1.061e-02  26.683  < 2e-16 ***
## log(sqft_lot15)    -4.893e-02  3.192e-03 -15.329  < 2e-16 ***
## waterfront1         3.643e-01  3.029e-02  12.027  < 2e-16 ***
## view1               1.500e-01  1.730e-02   8.674  < 2e-16 ***
## view2               8.368e-02  1.048e-02   7.987 1.45e-15 ***
## view3               1.197e-01  1.428e-02   8.382  < 2e-16 ***
## view4               2.591e-01  2.199e-02  11.784  < 2e-16 ***
## renovatedYes       -7.654e+00  1.323e+00  -5.787 7.27e-09 ***
## basementYes         5.275e-02  5.309e-03   9.936  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.3089 on 21596 degrees of freedom
## Multiple R-squared:  0.6562, Adjusted R-squared:  0.6559 
## F-statistic:  2576 on 16 and 21596 DF,  p-value: < 2.2e-16

Persamaan Regresi lm_model1 :

price = 95.684199 -0.035513 bedrooms + 0.082572 bathrooms + 0.288186 sqft_living + 0.105868 floors + 1.571963 grade - 11.839508yr_built + 0.003835 yr_renovated + 0.283039 sqft_living15 - 0.048929 sqft_lot15 + waterfront + view + Renovated + basement Note (for Categorical Independent Variabels) : + waterfront ++ If 1 Add 0.364334 to equation ++ If 0 Add nothing to equation
+ view ++ If 1 Add 0.150024 to equation ++ If 2 Add 0.083679 to equation ++ If 3 Add 0.119735 to equation ++ If 4 Add 0.25912 to equation ++ If 5 add nothing
+ renovated ++ If Yes Add -7.653711 to equation ++ If No add nothing to equation
+ basement ++ If have a basement Add 0.052749 ++ If didn’t have basement add nothing.


Variabel yang memiliki pengaruh negatif adalah jumlah kamar (bedrooms), tahun rumah dibangun (yr_built), luas tanah pada tahun 2015 (sqft_lot15) dan rumah yang sudah direnovasi. sisa dari variabel tersebut memiliki pengaruh positif terhadap harga rumah (price). lm_model1 Memiliki Multple R-Square sebesar 0.6562, yang berarti terdapat 65.62% variansi variabel independen sudah masuk kedalam model. Akurasi model sebesar 1.87%. Perlu diingat bahwa lm_model1 menggunakan transformasi log. Hasil dari prediksi lm_model1 masih dalam bentuk log(price), yang mana perlu ditransformasi kembali ke bentuk awal.