grasas <- read.table("http://verso.mat.uam.es/~joser.berrendero/datos/EdadPesoGrasas.txt",header=TRUE)
names(grasas)
## [1] "peso" "edad" "grasas"
head(grasas)
## peso edad grasas
## 1 84 46 354
## 2 73 20 190
## 3 65 52 405
## 4 70 30 263
## 5 76 57 451
## 6 69 25 302
pairs(grasas)
A continuación se hará una cuantificación del grado de relación lineal, por medio de la matriz de coeficientes de correlación.
cor(grasas)
## peso edad grasas
## peso 1.0000000 0.2400133 0.2652935
## edad 0.2400133 1.0000000 0.8373534
## grasas 0.2652935 0.8373534 1.0000000
Con esto observamos que a medida que aumenta la edad de una persona, aumenta el contenido de grasas en su cuerpo con un Ãndice de relación de 83% Esto explicado con un coeficiente de correlación de: 0.8373534
regresion <- lm(grasas ~ edad, data=grasas)
summary(regresion)
##
## Call:
## lm(formula = grasas ~ edad, data = grasas)
##
## Residuals:
## Min 1Q Median 3Q Max
## -63.478 -26.816 -3.854 28.315 90.881
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 102.5751 29.6376 3.461 0.00212 **
## edad 5.3207 0.7243 7.346 1.79e-07 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 43.46 on 23 degrees of freedom
## Multiple R-squared: 0.7012, Adjusted R-squared: 0.6882
## F-statistic: 53.96 on 1 and 23 DF, p-value: 1.794e-07
Con base a lo estimado en el análisis de regresión lineal, obtenemos la ecuación de la recta de mÃnimos cuadrados
\[y = 102.5751 + 5.3207x \]
plot (grasas$edad, grasas$grasas, xlab="Edad",ylab="Grasas")
abline(regresion)
nuevas.edades <- data.frame(edad=seq(20,60))
predict(regresion,nuevas.edades)
## 1 2 3 4 5 6 7 8
## 208.9887 214.3093 219.6300 224.9507 230.2714 235.5921 240.9127 246.2334
## 9 10 11 12 13 14 15 16
## 251.5541 256.8748 262.1954 267.5161 272.8368 278.1575 283.4781 288.7988
## 17 18 19 20 21 22 23 24
## 294.1195 299.4402 304.7608 310.0815 315.4022 320.7229 326.0435 331.3642
## 25 26 27 28 29 30 31 32
## 336.6849 342.0056 347.3263 352.6469 357.9676 363.2883 368.6090 373.9296
## 33 34 35 36 37 38 39 40
## 379.2503 384.5710 389.8917 395.2123 400.5330 405.8537 411.1744 416.4950
## 41
## 421.8157
*Suponemos ahora que los datos proceden de un modelo de regresión simple, de la forma:
\[y_i = \beta_0 + \beta_1 x_i + \epsilon_i, \ \ \ \ i=1,\ldots,n, \] Donde:
Los errores aleatorios \(\epsilon_i\) son independientes con distribución normal 0 y varianza \(\sigma^2\)
Los errores tÃpicos de los stimadores de los parámetros $ _0 y _1 $ se encuentran en la columna std error serÃan de manera correspondiente: 29.6376 y 0.7243
confint(regresion)
## 2.5 % 97.5 %
## (Intercept) 41.265155 163.885130
## edad 3.822367 6.818986
confint(regresion, level=0.90)
## 5 % 95 %
## (Intercept) 51.780153 153.370132
## edad 4.079335 6.562018
nuevas.edades <- data.frame(edad=seq(20,60))
#Gráfico de dispersión y recta
plot (grasas$edad, grasas$grasas, xlab="Edad",ylab="Grasas")
abline(regresion)
# Intervalos de confianza de la respuesta media
# ic es una matriz con tres columnas:
#La primera es la predicción, y las otras son los extremos del intervalo
ic <- predict(regresion,nuevas.edades, interval = "confidence")
lines(nuevas.edades$edad, ic[, 2], lty=2)
lines(nuevas.edades$edad, ic[, 3], lty=2)
#Intervalos de predicción
ic <- predict(regresion,nuevas.edades, interval = "prediction")
lines(nuevas.edades$edad, ic[, 2], lty=2, col = "red")
lines(nuevas.edades$edad, ic[, 3], lty=2, col = "red")
##Mis datos
#Consumo mensual bruto del SEN
**Intalar la libreria readr para poder leer datos de un EXCEL ##Importar datos del los datos locales del archivo armas CSV
library(readr)
library(DT)
Armas <- read_csv("Armas.csv")
## Parsed with column specification:
## cols(
## Anio = col_double(),
## armas = col_double(),
## granadas = col_double()
## )
datatable(Armas)
head(Armas)
## # A tibble: 3 x 3
## Anio armas granadas
## <dbl> <dbl> <dbl>
## 1 2012 1068 161
## 2 2013 9474 1203
## 3 2014 6552 649
pairs(Armas)
A continuación se hará una cuantificación del grado de relación lineal, por medio de la matriz de coeficientes de correlación.
cor(Armas)
## Anio armas granadas
## Anio 1.0000000 0.6425195 0.4680173
## armas 0.6425195 1.0000000 0.9778773
## granadas 0.4680173 0.9778773 1.0000000
Con esto observamos que a medida que aumenta de las armas y grandas que hay Esto explicado con un coeficiente de correlación de: 0.8373534
regreso <- lm(armas ~ granadas, data=Armas)
summary(regreso)
##
## Call:
## lm(formula = armas ~ granadas, data = Armas)
##
## Residuals:
## 1 2 3
## -547.7 -482.4 1030.1
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 326.939 1360.629 0.240 0.850
## granadas 8.005 1.712 4.675 0.134
##
## Residual standard error: 1262 on 1 degrees of freedom
## Multiple R-squared: 0.9562, Adjusted R-squared: 0.9125
## F-statistic: 21.85 on 1 and 1 DF, p-value: 0.1342
Con base a lo estimado en el análisis de regresión lineal, obtenemos la ecuación de la recta de mÃnimos cuadrados
\[y = 326.939 + 8.005x \] ### Gráfica de la recta de mÃnimos cuadrados
plot (Armas$armas, Armas$granadas, xlab="armas",ylab="grandas")
abline(regreso)
nuevas.armas <- data.frame(granadas=seq(20,60))
predict(regreso, nuevas.armas)
## 1 2 3 4 5 6 7 8
## 487.0301 495.0346 503.0392 511.0438 519.0483 527.0529 535.0574 543.0620
## 9 10 11 12 13 14 15 16
## 551.0666 559.0711 567.0757 575.0802 583.0848 591.0894 599.0939 607.0985
## 17 18 19 20 21 22 23 24
## 615.1031 623.1076 631.1122 639.1167 647.1213 655.1259 663.1304 671.1350
## 25 26 27 28 29 30 31 32
## 679.1396 687.1441 695.1487 703.1532 711.1578 719.1624 727.1669 735.1715
## 33 34 35 36 37 38 39 40
## 743.1761 751.1806 759.1852 767.1897 775.1943 783.1989 791.2034 799.2080
## 41
## 807.2126
*Suponemos ahora que los datos proceden de un modelo de regresión simple, de la forma:
\[y_i = \beta_0 + \beta_1 x_i + \epsilon_i, \ \ \ \ i=1,\ldots,n, \] Donde:
Los errores aleatorios \(\epsilon_i\) son independientes con distribución normal 0 y varianza \(\sigma^2\)
Los errores tÃpicos de los stimadores de los parámetros $ _0 y _1 $ se encuentran en la columna std error serÃan de manera correspondiente: 29.6376 y 0.7243
confint(regreso)
## 2.5 % 97.5 %
## (Intercept) -16961.4931 17615.37077
## granadas -13.7519 29.76103
confint(regreso, level=0.90)
## 5 % 95 %
## (Intercept) -8263.73523 8917.61288
## granadas -2.80629 18.81541
nuevas.armas <- data.frame(granadas=seq(20,60))
#Gráfico de dispersión y recta
plot (Armas$armas, Armas$granadas, xlab="armas",ylab="granadas")
abline(regreso)
# Intervalos de confianza de la respuesta media
# ico es una matriz con tres columnas:
#La primera es la predicción, y las otras son los extremos del intervalo
ico <- predict(regreso,nuevas.armas, interval = "confidence")
lines(nuevas.armas$granadas, ic[, 2], lty=2, col = "green")
lines(nuevas.armas$granadas, ic[, 3], lty=2, col = "green")
#Intervalos de predicción
ico <- predict(regresion,nuevas.edades, interval = "prediction")
lines(nuevas.armas$granadas, ic[, 2], lty=2, col = "blue")
lines(nuevas.armas$granadas, ic[, 3], lty=2, col = "blue")
##Conclusion
pense que saldrian mas resultados de mi graficas pero fue lo unico que me salio pense que me saldria mas extenso pero no a la proxima tendre que buscar datos intensas para la elaboracion de unas grafias mas intrepertadas