Regresión Lineal

Importar la base de datos de csv

data <- read.csv("C:\\Users\\evely\\Downloads\\HousePriceData.csv")

Usar file.choose()

Entender la base de datos

str(data)
## 'data.frame':    905 obs. of  10 variables:
##  $ Observation  : int  1 2 3 4 5 6 7 8 9 10 ...
##  $ Dist_Taxi    : int  9796 8294 11001 8301 10510 6665 13153 5882 7495 8233 ...
##  $ Dist_Market  : int  5250 8186 14399 11188 12629 5142 11869 9948 11589 7067 ...
##  $ Dist_Hospital: int  10703 12694 16991 12289 13921 9972 17811 13315 13370 11400 ...
##  $ Carpet       : int  1659 1461 1340 1451 1770 1442 1542 1261 1090 1030 ...
##  $ Builtup      : int  1961 1752 1609 1748 2111 1733 1858 1507 1321 1235 ...
##  $ Parking      : chr  "Open" "Not Provided" "Not Provided" "Covered" ...
##  $ City_Category: chr  "CAT B" "CAT B" "CAT A" "CAT B" ...
##  $ Rainfall     : int  530 210 720 620 450 760 1030 1020 680 1130 ...
##  $ House_Price  : int  6649000 3982000 5401000 5373000 4662000 4526000 7224000 3772000 4631000 4415000 ...
summary(data)
##   Observation      Dist_Taxi      Dist_Market    Dist_Hospital  
##  Min.   :  1.0   Min.   :  146   Min.   : 1666   Min.   : 3227  
##  1st Qu.:237.0   1st Qu.: 6477   1st Qu.: 9367   1st Qu.:11302  
##  Median :469.0   Median : 8228   Median :11149   Median :13189  
##  Mean   :468.4   Mean   : 8235   Mean   :11022   Mean   :13091  
##  3rd Qu.:700.0   3rd Qu.: 9939   3rd Qu.:12675   3rd Qu.:14855  
##  Max.   :932.0   Max.   :20662   Max.   :20945   Max.   :23294  
##                                                                 
##      Carpet         Builtup        Parking          City_Category     
##  Min.   :  775   Min.   :  932   Length:905         Length:905        
##  1st Qu.: 1317   1st Qu.: 1579   Class :character   Class :character  
##  Median : 1478   Median : 1774   Mode  :character   Mode  :character  
##  Mean   : 1511   Mean   : 1794                                        
##  3rd Qu.: 1654   3rd Qu.: 1985                                        
##  Max.   :24300   Max.   :12730                                        
##  NA's   :7                                                            
##     Rainfall       House_Price       
##  Min.   :-110.0   Min.   :  1492000  
##  1st Qu.: 600.0   1st Qu.:  4623000  
##  Median : 780.0   Median :  5860000  
##  Mean   : 786.9   Mean   :  6083992  
##  3rd Qu.: 970.0   3rd Qu.:  7200000  
##  Max.   :1560.0   Max.   :150000000  
## 

Generar el Modelo

regresion <- lm(House_Price~Dist_Taxi+Dist_Market+Dist_Hospital+Carpet+Builtup+factor(Parking)+factor(City_Category)+Rainfall, data=data)

summary(regresion)
## 
## Call:
## lm(formula = House_Price ~ Dist_Taxi + Dist_Market + Dist_Hospital + 
##     Carpet + Builtup + factor(Parking) + factor(City_Category) + 
##     Rainfall, data = data)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -3586934  -837542   -65314   784513  4577689 
## 
## Coefficients:
##                               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)                  5.568e+06  3.688e+05  15.097  < 2e-16 ***
## Dist_Taxi                    2.834e+01  2.694e+01   1.052   0.2931    
## Dist_Market                  1.237e+01  2.089e+01   0.592   0.5538    
## Dist_Hospital                5.071e+01  3.021e+01   1.679   0.0936 .  
## Carpet                       9.907e+03  1.428e+02  69.398  < 2e-16 ***
## Builtup                     -7.575e+03  2.412e+02 -31.403  < 2e-16 ***
## factor(Parking)No Parking   -6.170e+05  1.393e+05  -4.429 1.06e-05 ***
## factor(Parking)Not Provided -5.077e+05  1.239e+05  -4.096 4.58e-05 ***
## factor(Parking)Open         -2.597e+05  1.131e+05  -2.297   0.0218 *  
## factor(City_Category)CAT B  -1.883e+06  9.641e+04 -19.529  < 2e-16 ***
## factor(City_Category)CAT C  -2.902e+06  1.062e+05 -27.321  < 2e-16 ***
## Rainfall                    -9.984e+01  1.548e+02  -0.645   0.5191    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 1228000 on 886 degrees of freedom
##   (7 observations deleted due to missingness)
## Multiple R-squared:  0.9429, Adjusted R-squared:  0.9422 
## F-statistic:  1329 on 11 and 886 DF,  p-value: < 2.2e-16

El modelo presenta un R² = 0.9429 y un R² ajustado = 0.9422, lo que indica que aproximadamente el 94% de la variabilidad del precio de la vivienda es explicada por las variables incluidas, esto sugiere un ajuste muy alto y que el modelo tiene una capacidad predictiva sólida, además, el p-value es significativo (p < 2.2e-16), lo que confirma que el conjunto de variables independientes explica significativamente el precio de las casas.

Generar Pronósticos

datos_nuevos <- data.frame(Dist_Taxi=9796, Dist_Market=5250, Dist_Hospital=10703, Carpet=1659, Builtup=1961, Parking="Covered", City_Category="CAT B", Rainfall=530)
predict(regresion, datos_nuevos)
##       1 
## 6098738

Esto significa que, dadas esas características, el modelo estima que el precio esperado de la vivienda es cercano a 6.1 millones.

Conclusiones

El modelo de regresión lineal múltiple muestra un ajuste estadístico muy alto, explicando más del 94% de la variabilidad del precio de las viviendas. Las variables más influyentes son el tamaño de la propiedad, el tipo de estacionamiento y la categoría de la ciudad, lo que indica que las características estructurales y la ubicación son determinantes principales del valor inmobiliario. En contraste, variables como distancia a servicios y precipitación no presentan evidencia significativa de influencia. En conjunto, el modelo resulta robusto y útil para estimaciones de precios, aunque el error residual sugiere que aún existen factores no observados que afectan el valor final.

LS0tDQp0aXRsZTogIlJlZ3Jlc2lvbiBMaW5lYWwgSG91c2UgUHJpY2luZyINCmF1dGhvcjogIlJlYmVjYSBSZWNpbyBBMDEzODU1MjAiDQpkYXRlOiAiMjAyNi0wMi0xNyINCm91dHB1dDogDQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2Zsb2F0OiBUUlVFDQogICAgY29kZV9kb3dubG9hZDogVFJVRSANCiAgICB0aGVtZTogY29zbW8NCi0tLQ0KDQojIFJlZ3Jlc2nDs24gTGluZWFsDQojIEltcG9ydGFyIGxhIGJhc2UgZGUgZGF0b3MgZGUgY3N2DQpgYGB7cn0NCmRhdGEgPC0gcmVhZC5jc3YoIkM6XFxVc2Vyc1xcZXZlbHlcXERvd25sb2Fkc1xcSG91c2VQcmljZURhdGEuY3N2IikNCmBgYA0KDQojIFVzYXIgZmlsZS5jaG9vc2UoKQ0KDQojIEVudGVuZGVyIGxhIGJhc2UgZGUgZGF0b3MNCmBgYHtyfQ0Kc3RyKGRhdGEpDQpzdW1tYXJ5KGRhdGEpDQpgYGANCiMgR2VuZXJhciBlbCBNb2RlbG8NCmBgYHtyfQ0KcmVncmVzaW9uIDwtIGxtKEhvdXNlX1ByaWNlfkRpc3RfVGF4aStEaXN0X01hcmtldCtEaXN0X0hvc3BpdGFsK0NhcnBldCtCdWlsdHVwK2ZhY3RvcihQYXJraW5nKStmYWN0b3IoQ2l0eV9DYXRlZ29yeSkrUmFpbmZhbGwsIGRhdGE9ZGF0YSkNCg0Kc3VtbWFyeShyZWdyZXNpb24pDQpgYGANCiMgRWwgbW9kZWxvIHByZXNlbnRhIHVuIFLCsiA9IDAuOTQyOSB5IHVuIFLCsiBhanVzdGFkbyA9IDAuOTQyMiwgbG8gcXVlIGluZGljYSBxdWUgYXByb3hpbWFkYW1lbnRlIGVsIDk0JSBkZSBsYSB2YXJpYWJpbGlkYWQgZGVsIHByZWNpbyBkZSBsYSB2aXZpZW5kYSBlcyBleHBsaWNhZGEgcG9yIGxhcyB2YXJpYWJsZXMgaW5jbHVpZGFzLCBlc3RvIHN1Z2llcmUgdW4gYWp1c3RlIG11eSBhbHRvIHkgcXVlIGVsIG1vZGVsbyB0aWVuZSB1bmEgY2FwYWNpZGFkIHByZWRpY3RpdmEgc8OzbGlkYSwgYWRlbcOhcywgZWwgcC12YWx1ZSBlcyBzaWduaWZpY2F0aXZvIChwIDwgMi4yZS0xNiksIGxvIHF1ZSBjb25maXJtYSBxdWUgZWwgY29uanVudG8gZGUgdmFyaWFibGVzIGluZGVwZW5kaWVudGVzIGV4cGxpY2Egc2lnbmlmaWNhdGl2YW1lbnRlIGVsIHByZWNpbyBkZSBsYXMgY2FzYXMuDQoNCiMgR2VuZXJhciBQcm9uw7NzdGljb3MNCmBgYHtyfQ0KZGF0b3NfbnVldm9zIDwtIGRhdGEuZnJhbWUoRGlzdF9UYXhpPTk3OTYsIERpc3RfTWFya2V0PTUyNTAsIERpc3RfSG9zcGl0YWw9MTA3MDMsIENhcnBldD0xNjU5LCBCdWlsdHVwPTE5NjEsIFBhcmtpbmc9IkNvdmVyZWQiLCBDaXR5X0NhdGVnb3J5PSJDQVQgQiIsIFJhaW5mYWxsPTUzMCkNCnByZWRpY3QocmVncmVzaW9uLCBkYXRvc19udWV2b3MpDQpgYGANCiMgRXN0byBzaWduaWZpY2EgcXVlLCBkYWRhcyBlc2FzIGNhcmFjdGVyw61zdGljYXMsIGVsIG1vZGVsbyBlc3RpbWEgcXVlIGVsIHByZWNpbyBlc3BlcmFkbyBkZSBsYSB2aXZpZW5kYSBlcyBjZXJjYW5vIGEgNi4xIG1pbGxvbmVzLg0KDQojIENvbmNsdXNpb25lcw0KDQojIEVsIG1vZGVsbyBkZSByZWdyZXNpw7NuIGxpbmVhbCBtw7psdGlwbGUgbXVlc3RyYSB1biBhanVzdGUgZXN0YWTDrXN0aWNvIG11eSBhbHRvLCBleHBsaWNhbmRvIG3DoXMgZGVsIDk0JSBkZSBsYSB2YXJpYWJpbGlkYWQgZGVsIHByZWNpbyBkZSBsYXMgdml2aWVuZGFzLiBMYXMgdmFyaWFibGVzIG3DoXMgaW5mbHV5ZW50ZXMgc29uIGVsIHRhbWHDsW8gZGUgbGEgcHJvcGllZGFkLCBlbCB0aXBvIGRlIGVzdGFjaW9uYW1pZW50byB5IGxhIGNhdGVnb3LDrWEgZGUgbGEgY2l1ZGFkLCBsbyBxdWUgaW5kaWNhIHF1ZSBsYXMgY2FyYWN0ZXLDrXN0aWNhcyBlc3RydWN0dXJhbGVzIHkgbGEgdWJpY2FjacOzbiBzb24gZGV0ZXJtaW5hbnRlcyBwcmluY2lwYWxlcyBkZWwgdmFsb3IgaW5tb2JpbGlhcmlvLiBFbiBjb250cmFzdGUsIHZhcmlhYmxlcyBjb21vIGRpc3RhbmNpYSBhIHNlcnZpY2lvcyB5IHByZWNpcGl0YWNpw7NuIG5vIHByZXNlbnRhbiBldmlkZW5jaWEgc2lnbmlmaWNhdGl2YSBkZSBpbmZsdWVuY2lhLiBFbiBjb25qdW50bywgZWwgbW9kZWxvIHJlc3VsdGEgcm9idXN0byB5IMO6dGlsIHBhcmEgZXN0aW1hY2lvbmVzIGRlIHByZWNpb3MsIGF1bnF1ZSBlbCBlcnJvciByZXNpZHVhbCBzdWdpZXJlIHF1ZSBhw7puIGV4aXN0ZW4gZmFjdG9yZXMgbm8gb2JzZXJ2YWRvcyBxdWUgYWZlY3RhbiBlbCB2YWxvciBmaW5hbC4NCg==