library(readr)
library(ggplot2)
library(stats)
ruta="C:/Users/AlanA/Desktop/8vo/Analisis Datos/datos"
setwd(ruta)
datos <- read.csv("rutas.csv")
str(datos)
## 'data.frame': 18 obs. of 3 variables:
## $ ruta : Factor w/ 18 levels "Chicago-Atlanta",..: 7 9 4 5 2 1 16 18 13 3 ...
## $ millas: int 178 232 238 262 301 593 1092 1608 714 901 ...
## $ costo : int 125 123 148 136 129 162 224 264 287 256 ...
summary(datos)
## ruta millas costo
## Chicago-Atlanta : 1 Min. : 178 Min. :123.0
## Chicago-Cleveland : 1 1st Qu.: 374 1st Qu.:151.5
## Chicago-Denver : 1 Median :1048 Median :275.5
## Chicago-Detroit : 1 Mean :1196 Mean :280.7
## Chicago-San Luis : 1 3rd Qu.:1752 3rd Qu.:364.0
## Chicago-Seattle : 1 Max. :2574 Max. :513.0
## (Other) :12
cr= cor(datos$millas,datos$costo)
cr
## [1] 0.835779
modelo= lm(costo ~ millas,datos)
modelo
##
## Call:
## lm(formula = costo ~ millas, data = datos)
##
## Coefficients:
## (Intercept) millas
## 128.5770 0.1272
a = modelo$coefficients[1]
b = modelo$coefficients[2]
a; b
## (Intercept)
## 128.577
## millas
## 0.1271535
ggplot(datos, aes(millas, costo)) + geom_point()
summary(modelo)
##
## Call:
## lm(formula = costo ~ millas, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -130.58 -40.95 -18.36 46.06 155.71
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 128.57699 30.24824 4.251 0.00061 ***
## millas 0.12715 0.02088 6.089 1.57e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 72.38 on 16 degrees of freedom
## Multiple R-squared: 0.6985, Adjusted R-squared: 0.6797
## F-statistic: 37.07 on 1 and 16 DF, p-value: 1.567e-05
sqrt(0.6985) # La raiz debe ser igual a cor()
## [1] 0.8357631
y.predict = predict(modelo, datos)
y.predict
## 1 2 3 4 5 6 7 8
## 151.2103 158.0766 158.8395 161.8912 166.8502 203.9790 267.4286 333.0398
## 9 10 11 12 13 14 15 16
## 219.3646 243.1423 256.3662 303.2859 349.3154 351.9856 376.0176 441.7560
## 17 18
## 453.5813 455.8700
ggplot() + geom_point(data = datos, aes(x = millas, y = costo), size = 0.9) +
geom_line(aes( x = datos$millas, y = y.predict), color = "red") +
xlab("Millas") +
ylab("Costo") +
ggtitle("Linea de tendencia sobre Conjunto de Datos. Millas Costo")
nuevosdatos= data.frame(millas <- c(800, 1200, 1800, 2680))
nuevosdatos
## millas....c.800..1200..1800..2680.
## 1 800
## 2 1200
## 3 1800
## 4 2680
prediccion <- predict(modelo,nuevosdatos)
prediccion
## 1 2 3 4
## 230.2998 281.1612 357.4532 469.3483
Lo primero que podemos observar en nuestra presente practica es el coeficiente de correlacion el cual nos da un valor de 0.835779 Lo cual significa que tenemos una correlación positiva considerable. En primera instancia y observando este coeficiente podemos determinar que nuestros datos son candidatos a tener una correlacion y una vez interpretado dicho coeficiente de correlacion podemos decidir si continuar con nuestro analisis. Si es asi podemos aplicar algoritmos de regresión.
Una vez que hemos desarrollado nuestro algoritmo de regresion podemos comprobar datos determinando los estadisticos de dichos datos.
Con nuestro diagrama de dispersion, y creando nuestra linea de tendencia y basicamente lo que modemos observar es:
Existe una relacion no muy fuerte entre el costo y las millas recorridas, esta relacion si bien no es muy fuerte, existe lo cual nos permite determinar un aproximado de millas recorridas y costos.
Por ejemplo y deacuerdo a nuestros estadisticos con el conjunto de datos 800, 1200, 1800, 2680 podemos realizar con la funcion predict() podemos ver que el resultado de los respectivos datos en costo es: 230.2998,281.1612,357.4532,469.3483