Post on 27-Sep-2020
Modelos Lineales
Informática EstadísticaCurso de R
Ricardo Ríoshttp://ricardorios.net
Universidad de El Salvador
17 de Junio de 2013
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Indice
1 Modelos Lineales
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Introducción
Los modelos de regresión lineal son modelosprobabilísticos basados en una función lineal, expresamosuna variable en función de otro conjunto de variables. Lospasos básicos a seguir en el estudio de un modelo linealson:
Escribir el modelo matemático con todas sus hipótesisEstimación de los parámetros del modeloInferencias sobre los parámetrosDiagnóstico del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Introducción
Los modelos de regresión lineal son modelosprobabilísticos basados en una función lineal, expresamosuna variable en función de otro conjunto de variables. Lospasos básicos a seguir en el estudio de un modelo linealson:
Escribir el modelo matemático con todas sus hipótesisEstimación de los parámetros del modeloInferencias sobre los parámetrosDiagnóstico del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Introducción
Los modelos de regresión lineal son modelosprobabilísticos basados en una función lineal, expresamosuna variable en función de otro conjunto de variables. Lospasos básicos a seguir en el estudio de un modelo linealson:
Escribir el modelo matemático con todas sus hipótesisEstimación de los parámetros del modeloInferencias sobre los parámetrosDiagnóstico del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Introducción
Los modelos de regresión lineal son modelosprobabilísticos basados en una función lineal, expresamosuna variable en función de otro conjunto de variables. Lospasos básicos a seguir en el estudio de un modelo linealson:
Escribir el modelo matemático con todas sus hipótesisEstimación de los parámetros del modeloInferencias sobre los parámetrosDiagnóstico del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Introducción
Los modelos de regresión lineal son modelosprobabilísticos basados en una función lineal, expresamosuna variable en función de otro conjunto de variables. Lospasos básicos a seguir en el estudio de un modelo linealson:
Escribir el modelo matemático con todas sus hipótesisEstimación de los parámetros del modeloInferencias sobre los parámetrosDiagnóstico del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Introducción
La forma general del modelo es la siguiente:
yi = β1X1i + β2X2i + · · ·+ βnXni + β0 + εi
Donde εi ∼ N(0, σ)
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función que realiza los modelos lineales en R es lm()(de lineal model).Pero esta función no nos ofrece ninguna salida porpantalla si no que nos crea un objeto, o mejor dicho,nosotros creamos un objeto que va a ser un modelo deregresión linealEste objeto puede ser referenciado por cualquier funciónpara realizar un análisis de la varianza,un modeloautoregresivo, etc
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función que realiza los modelos lineales en R es lm()(de lineal model).Pero esta función no nos ofrece ninguna salida porpantalla si no que nos crea un objeto, o mejor dicho,nosotros creamos un objeto que va a ser un modelo deregresión linealEste objeto puede ser referenciado por cualquier funciónpara realizar un análisis de la varianza,un modeloautoregresivo, etc
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función que realiza los modelos lineales en R es lm()(de lineal model).Pero esta función no nos ofrece ninguna salida porpantalla si no que nos crea un objeto, o mejor dicho,nosotros creamos un objeto que va a ser un modelo deregresión linealEste objeto puede ser referenciado por cualquier funciónpara realizar un análisis de la varianza,un modeloautoregresivo, etc
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene la siguiente sintaxis:
lm(formula, data, subset, weights,method = "qr", model = TRUE, x = FALSE,y = FALSE, qr = TRUE,contrasts = NULL, ...)
En formula ponemos el modelo expresado:y ~x1+x2+...+xnEn data especificamos el data frame que contiene lasvariables del modelo en el caso de que trabajemos con undata frame
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene la siguiente sintaxis:
lm(formula, data, subset, weights,method = "qr", model = TRUE, x = FALSE,y = FALSE, qr = TRUE,contrasts = NULL, ...)
En formula ponemos el modelo expresado:y ~x1+x2+...+xnEn data especificamos el data frame que contiene lasvariables del modelo en el caso de que trabajemos con undata frame
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene la siguiente sintaxis:
lm(formula, data, subset, weights,method = "qr", model = TRUE, x = FALSE,y = FALSE, qr = TRUE,contrasts = NULL, ...)
En formula ponemos el modelo expresado:y ~x1+x2+...+xnEn data especificamos el data frame que contiene lasvariables del modelo en el caso de que trabajemos con undata frame
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene la siguiente sintaxis:
lm(formula, data, subset, weights,method = "qr", model = TRUE, x = FALSE,y = FALSE, qr = TRUE,contrasts = NULL, ...)
En formula ponemos el modelo expresado:y ~x1+x2+...+xnEn data especificamos el data frame que contiene lasvariables del modelo en el caso de que trabajemos con undata frame
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En subset especificamos un subconjunto deobservaciones para validar posteriormente el modeloEn weights especificamos los pesos, útil si hacemosmínimos cuadrados ponderadosCon method especificamos el método. No entramospuesto que con el módulo base sólo es posible obtener elmodelo por mínimos cuadradosEn model con TRUE decimos a R que ha de guardarse enel objeto, la matriz del modelo, la frame y ladescomposición QREn contraste podemos especificar objetos con los querealizar contrastes sobre los parámetros
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En subset especificamos un subconjunto deobservaciones para validar posteriormente el modeloEn weights especificamos los pesos, útil si hacemosmínimos cuadrados ponderadosCon method especificamos el método. No entramospuesto que con el módulo base sólo es posible obtener elmodelo por mínimos cuadradosEn model con TRUE decimos a R que ha de guardarse enel objeto, la matriz del modelo, la frame y ladescomposición QREn contraste podemos especificar objetos con los querealizar contrastes sobre los parámetros
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En subset especificamos un subconjunto deobservaciones para validar posteriormente el modeloEn weights especificamos los pesos, útil si hacemosmínimos cuadrados ponderadosCon method especificamos el método. No entramospuesto que con el módulo base sólo es posible obtener elmodelo por mínimos cuadradosEn model con TRUE decimos a R que ha de guardarse enel objeto, la matriz del modelo, la frame y ladescomposición QREn contraste podemos especificar objetos con los querealizar contrastes sobre los parámetros
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En subset especificamos un subconjunto deobservaciones para validar posteriormente el modeloEn weights especificamos los pesos, útil si hacemosmínimos cuadrados ponderadosCon method especificamos el método. No entramospuesto que con el módulo base sólo es posible obtener elmodelo por mínimos cuadradosEn model con TRUE decimos a R que ha de guardarse enel objeto, la matriz del modelo, la frame y ladescomposición QREn contraste podemos especificar objetos con los querealizar contrastes sobre los parámetros
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En subset especificamos un subconjunto deobservaciones para validar posteriormente el modeloEn weights especificamos los pesos, útil si hacemosmínimos cuadrados ponderadosCon method especificamos el método. No entramospuesto que con el módulo base sólo es posible obtener elmodelo por mínimos cuadradosEn model con TRUE decimos a R que ha de guardarse enel objeto, la matriz del modelo, la frame y ladescomposición QREn contraste podemos especificar objetos con los querealizar contrastes sobre los parámetros
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene muchas mas opciones pero paraconocer mejor su funcionamiento vamos a ver ejemplosEl tiempo que tarda un sistema informático en red enejecutar una instrucción depende del número de usuariosconectados a él. Si no hay usuarios el tiempo es 0.Tenemos los siguientes datos:
Número de usuarios Tiempo de ejecución10 115 1.220 220 2.125 2.230 230 1.9
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene muchas mas opciones pero paraconocer mejor su funcionamiento vamos a ver ejemplosEl tiempo que tarda un sistema informático en red enejecutar una instrucción depende del número de usuariosconectados a él. Si no hay usuarios el tiempo es 0.Tenemos los siguientes datos:
Número de usuarios Tiempo de ejecución10 115 1.220 220 2.125 2.230 230 1.9
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene muchas mas opciones pero paraconocer mejor su funcionamiento vamos a ver ejemplosEl tiempo que tarda un sistema informático en red enejecutar una instrucción depende del número de usuariosconectados a él. Si no hay usuarios el tiempo es 0.Tenemos los siguientes datos:
Número de usuarios Tiempo de ejecución10 115 1.220 220 2.125 2.230 230 1.9
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La función lm tiene muchas mas opciones pero paraconocer mejor su funcionamiento vamos a ver ejemplosEl tiempo que tarda un sistema informático en red enejecutar una instrucción depende del número de usuariosconectados a él. Si no hay usuarios el tiempo es 0.Tenemos los siguientes datos:
Número de usuarios Tiempo de ejecución10 115 1.220 220 2.125 2.230 230 1.9
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
tiempo<-c(1,1.2,2,2.1,2.2,2,1.9)usuarios<-c(10,15,20,20,25,30,30)plot(usuarios, tiempo)regresion <- (tiempo ~ usuarios)summary(regresion)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
tiempo<-c(1,1.2,2,2.1,2.2,2,1.9)usuarios<-c(10,15,20,20,25,30,30)plot(usuarios, tiempo)regresion <- (tiempo ~ usuarios)summary(regresion)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
tiempo<-c(1,1.2,2,2.1,2.2,2,1.9)usuarios<-c(10,15,20,20,25,30,30)plot(usuarios, tiempo)regresion <- (tiempo ~ usuarios)summary(regresion)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
●
●
●
●
●
●
●
10 15 20 25 30
1.0
1.2
1.4
1.6
1.8
2.0
2.2
usuarios
tiem
po
Figura: Gráfico de dispersion de los usuarios frente al tiempoRicardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Call:lm(formula = tiempo ~ usuarios)
Residuals:1 2 3 4 5 6 7
-0.2170 -0.2596 0.2979 0.3979 0.2553 -0.1872 -0.2872
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.73191 0.40551 1.805 0.1309usuarios 0.04851 0.01801 2.694 0.0431 *---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.3299 on 5 degrees of freedomMultiple R-squared: 0.5921, Adjusted R-squared: 0.5105F-statistic: 7.258 on 1 and 5 DF, p-value: 0.04309
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Los modelos se escriben de la forma dependiente~indepentiente1+independiente2+...+independienten + cteEn este caso el modelo resultante sería:tiempo de ejecución=0.04851usuario+0.73191Se observa que el termino constante no es significativopor que el p-valor correspondiente a la prueba de hipótesisH0 : β0 = 0 es 0.1309Como el término constante no es significativo se quitaradel modelo, volvemos a realizar los cálculos con el R
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Los modelos se escriben de la forma dependiente~indepentiente1+independiente2+...+independienten + cteEn este caso el modelo resultante sería:tiempo de ejecución=0.04851usuario+0.73191Se observa que el termino constante no es significativopor que el p-valor correspondiente a la prueba de hipótesisH0 : β0 = 0 es 0.1309Como el término constante no es significativo se quitaradel modelo, volvemos a realizar los cálculos con el R
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Los modelos se escriben de la forma dependiente~indepentiente1+independiente2+...+independienten + cteEn este caso el modelo resultante sería:tiempo de ejecución=0.04851usuario+0.73191Se observa que el termino constante no es significativopor que el p-valor correspondiente a la prueba de hipótesisH0 : β0 = 0 es 0.1309Como el término constante no es significativo se quitaradel modelo, volvemos a realizar los cálculos con el R
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Los modelos se escriben de la forma dependiente~indepentiente1+independiente2+...+independienten + cteEn este caso el modelo resultante sería:tiempo de ejecución=0.04851usuario+0.73191Se observa que el termino constante no es significativopor que el p-valor correspondiente a la prueba de hipótesisH0 : β0 = 0 es 0.1309Como el término constante no es significativo se quitaradel modelo, volvemos a realizar los cálculos con el R
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
regresion2 <- lm(tiempo~usuarios-1)summary(regresion2)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
regresion2 <- lm(tiempo~usuarios-1)summary(regresion2)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
regresion2 <- lm(tiempo~usuarios-1)summary(regresion2)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Call:lm(formula = tiempo ~ usuarios - 1)
Residuals:Min 1Q Median 3Q Max
-0.4831 -0.1873 0.2056 0.3127 0.5113
Coefficients:Estimate Std. Error t value Pr(>|t|)
usuarios 0.079437 0.006496 12.23 1.82e-05 ***---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.3871 on 6 degrees of freedomMultiple R-squared: 0.9614, Adjusted R-squared: 0.955F-statistic: 149.5 on 1 and 6 DF, p-value: 1.821e-05
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En este caso el modelo resultante sería: tiempo deejecución=0.0794usuariostambién decir que es un excelente modelo lineal ya que elMultiple R-Squared: 0.9614 (coeficiente de determinaciónajustado) es bastante próximo a 1 (el mejor valor posible)A continuación construiremos la tabla de análisis devarianza del modelo y observaremos unos gráficos dediagnosis del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En este caso el modelo resultante sería: tiempo deejecución=0.0794usuariostambién decir que es un excelente modelo lineal ya que elMultiple R-Squared: 0.9614 (coeficiente de determinaciónajustado) es bastante próximo a 1 (el mejor valor posible)A continuación construiremos la tabla de análisis devarianza del modelo y observaremos unos gráficos dediagnosis del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En este caso el modelo resultante sería: tiempo deejecución=0.0794usuariostambién decir que es un excelente modelo lineal ya que elMultiple R-Squared: 0.9614 (coeficiente de determinaciónajustado) es bastante próximo a 1 (el mejor valor posible)A continuación construiremos la tabla de análisis devarianza del modelo y observaremos unos gráficos dediagnosis del modelo
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
anova(regresion2)plot(regresion2)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
anova(regresion2)plot(regresion2)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
anova(regresion2)plot(regresion2)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Analysis of Variance Table
Response: tiempoDf Sum Sq Mean Sq F value Pr(>F)
usuarios 1 22.4011 22.4011 149.53 1.821e-05 ***Residuals 6 0.8989 0.1498---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En general en un modelo de regresión lineal el análisis devarianza realiza el siguiente contraste:
H0 : β1 = β2 = · · · = βn
H1 : βi 6= βj i 6= j
A continuación se plantea un ejercicio
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
En general en un modelo de regresión lineal el análisis devarianza realiza el siguiente contraste:
H0 : β1 = β2 = · · · = βn
H1 : βi 6= βj i 6= j
A continuación se plantea un ejercicio
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “preciocasas.dat” y“preciocasas.doc”Graficar la relación entre precio y superficie de casasHacer un modelo de regresion tomando como variabledependiente el precio y variable independiente lasuperficieRealizar un análisis AnovaSugerencia: Tomar en cuenta que el archivo estadelimitado por tabulaciones y no tiene indicada lasvariables en la primera fila, usar la función fix(data.frame)para modificar los nombres de las variablesA continuación realizaremos un análisis de regresión linealmultiple
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “preciocasas.dat” y“preciocasas.doc”Graficar la relación entre precio y superficie de casasHacer un modelo de regresion tomando como variabledependiente el precio y variable independiente lasuperficieRealizar un análisis AnovaSugerencia: Tomar en cuenta que el archivo estadelimitado por tabulaciones y no tiene indicada lasvariables en la primera fila, usar la función fix(data.frame)para modificar los nombres de las variablesA continuación realizaremos un análisis de regresión linealmultiple
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “preciocasas.dat” y“preciocasas.doc”Graficar la relación entre precio y superficie de casasHacer un modelo de regresion tomando como variabledependiente el precio y variable independiente lasuperficieRealizar un análisis AnovaSugerencia: Tomar en cuenta que el archivo estadelimitado por tabulaciones y no tiene indicada lasvariables en la primera fila, usar la función fix(data.frame)para modificar los nombres de las variablesA continuación realizaremos un análisis de regresión linealmultiple
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “preciocasas.dat” y“preciocasas.doc”Graficar la relación entre precio y superficie de casasHacer un modelo de regresion tomando como variabledependiente el precio y variable independiente lasuperficieRealizar un análisis AnovaSugerencia: Tomar en cuenta que el archivo estadelimitado por tabulaciones y no tiene indicada lasvariables en la primera fila, usar la función fix(data.frame)para modificar los nombres de las variablesA continuación realizaremos un análisis de regresión linealmultiple
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “preciocasas.dat” y“preciocasas.doc”Graficar la relación entre precio y superficie de casasHacer un modelo de regresion tomando como variabledependiente el precio y variable independiente lasuperficieRealizar un análisis AnovaSugerencia: Tomar en cuenta que el archivo estadelimitado por tabulaciones y no tiene indicada lasvariables en la primera fila, usar la función fix(data.frame)para modificar los nombres de las variablesA continuación realizaremos un análisis de regresión linealmultiple
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “preciocasas.dat” y“preciocasas.doc”Graficar la relación entre precio y superficie de casasHacer un modelo de regresion tomando como variabledependiente el precio y variable independiente lasuperficieRealizar un análisis AnovaSugerencia: Tomar en cuenta que el archivo estadelimitado por tabulaciones y no tiene indicada lasvariables en la primera fila, usar la función fix(data.frame)para modificar los nombres de las variablesA continuación realizaremos un análisis de regresión linealmultiple
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
datos <- read.table(file="preciocasas.dat")
names(datos) <- c("y", "x1", "x2", "x3", "x4", "x5", "x6" )
pairs(precio ~ x1 + x5 , data = datos )modelo <- lm( precio ~ x1 + x2 + x3 + x4 + x5 + x7 ,data = datos)summary(modelo)anova(modelo)plot(modelo)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
datos <- read.table(file="preciocasas.dat")
names(datos) <- c("y", "x1", "x2", "x3", "x4", "x5", "x6" )
pairs(precio ~ x1 + x5 , data = datos )modelo <- lm( precio ~ x1 + x2 + x3 + x4 + x5 + x7 ,data = datos)summary(modelo)anova(modelo)plot(modelo)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Ejecutar lo siguiente:
datos <- read.table(file="preciocasas.dat")
names(datos) <- c("y", "x1", "x2", "x3", "x4", "x5", "x6" )
pairs(precio ~ x1 + x5 , data = datos )modelo <- lm( precio ~ x1 + x2 + x3 + x4 + x5 + x7 ,data = datos)summary(modelo)anova(modelo)plot(modelo)
Los anteriores comandos nos darán lo siguiente
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
y
100 150 200 250
●●●● ● ●●●● ●● ●●● ●● ●● ● ●● ●●● ●● ●●
● ●●
●● ●●
●
●
●
●● ●● ●● ● ●
●●●
●● ● ●●● ●●
● ●
●
●
●
●
●●●●● ●
● ●● ●●●●● ●●
●●● ● ●● ●●●●● ●●
● ●●● ●● ●●
2e+
054e
+05
6e+
05
● ●●● ● ●● ●●●● ●●● ●● ● ● ●●● ●● ● ●● ●●
● ●●
●● ●●
●
●
●
●●●
● ●● ●●● ●
●● ●●● ● ●●
●●●
●
●
●
●
●● ●● ● ●
● ●● ●●●●● ●●
● ●●● ●●● ●● ●● ● ●
● ●●
● ● ●● ●10
015
020
025
0
●
●●
●●
●●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●●●●●●
●
●●●
●●
●
●
x1 ●
●●
●●
●●
●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●●●
●
●
●
●
●
●
●
●
●
●
●●
●●● ●
●
●●●
● ●
●
●
2e+05 4e+05 6e+05
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●●
●●●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●●
●
●
●
●
●
●
●
●●
●●
●
●
●●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
●
●●
●●
●
●
●
●●
●
●
●
●
●●
●
●
●
●
●
●●●
●
●●
●
●
●●
●
●
●
●
●
●
●
●
●
●●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●●
●●
●
●
●
5 10 15 20
510
1520
x5
Figura: Matriz de gráfics de dispersionRicardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Call:lm(formula = y ~ x1 + x2 + x3 + x4 + x5 + x6, data = datos)
Residuals:Min 1Q Median 3Q Max
-101247.9 -23049.8 -344.7 18035.9 141927.8
Coefficients:Estimate Std. Error t value Pr(>|t|)
(Intercept) 29844.7 26365.3 1.132 0.26056x1 1159.3 142.9 8.112 1.98e-12 ***x2 13284.5 9286.2 1.431 0.15591x3 8695.2 6708.7 1.296 0.19814x4 59777.1 14604.0 4.093 9.06e-05 ***x5 -3198.4 974.3 -3.283 0.00145 **x6 34312.9 10963.6 3.130 0.00234 **---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 38920 on 93 degrees of freedomMultiple R-squared: 0.7505, Adjusted R-squared: 0.7344F-statistic: 46.61 on 6 and 93 DF, p-value: < 2.2e-16
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Analysis of Variance Table
Response: yDf Sum Sq Mean Sq F value Pr(>F)
x1 1 3.5044e+11 3.5044e+11 231.3815 < 2.2e-16 ***x2 1 9.3702e+09 9.3702e+09 6.1867 0.014653 *x3 1 2.6495e+08 2.6495e+08 0.1749 0.676728x4 1 3.3718e+10 3.3718e+10 22.2626 8.359e-06 ***x5 1 1.4966e+10 1.4966e+10 9.8811 0.002241 **x6 1 1.4835e+10 1.4835e+10 9.7951 0.002338 **Residuals 93 1.4086e+11 1.5146e+09---Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La tabla anterior no es la tabla ANOVA, la funcion anovasirve para comparar dos modelos, si lo que queremos esla tabla ANOVA del modelo debemos ejecutar lossiguientes comandos en R
install.packages("Design")modelo2 <- ols(y ~ x1 + x2 + x3 + x4 + x5 + x6 , data = datos)anova.Design(modelo2)
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
La tabla anterior no es la tabla ANOVA, la funcion anovasirve para comparar dos modelos, si lo que queremos esla tabla ANOVA del modelo debemos ejecutar lossiguientes comandos en R
install.packages("Design")modelo2 <- ols(y ~ x1 + x2 + x3 + x4 + x5 + x6 , data = datos)anova.Design(modelo2)
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Regresión lineal en R
Analysis of Variance Response: y
Factor d.f. Partial SS MS F Px1 1 99663690044 99663690044 65.80 <.0001x2 1 3099567156 3099567156 2.05 0.1559x3 1 2544352450 2544352450 1.68 0.1981x4 1 25375662422 25375662422 16.75 0.0001x5 1 16321677357 16321677357 10.78 0.0014x6 1 14835387144 14835387144 9.80 0.0023REGRESSION 6 423597866137 70599644356 46.61 <.0001ERROR 93 140855006100 1514569958
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Otras funciones útiles
coefficients(fit) # coeficientes del modeloconfint(fit, level=0.95) # IC para los parametrosfitted(fit) # valores predichosresiduals(fit) # residuosinfluence(fit) # puntos de influenciapredict() # Realizar predicciones
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “information_bodyfat.txt” y“bodyfat.dat”Realizar un análisis de regresión lineal múltiple entre lavariable Fat como variable dependiente y las demásvariables como independientes
Ricardo Ríos http://ricardorios.net Informática Estadística
Modelos Lineales
Ejercicio
Descargar los archivos “information_bodyfat.txt” y“bodyfat.dat”Realizar un análisis de regresión lineal múltiple entre lavariable Fat como variable dependiente y las demásvariables como independientes
Ricardo Ríos http://ricardorios.net Informática Estadística