#Instalar paquetes
[Link]("ggpubr")
[Link]("mctest")
[Link]("mctest")
[Link]("performance")
[Link]("see")
[Link]("readxl")
[Link]("ggplot2")
[Link]("gridExtra")
[Link]("moments")
[Link]("lmtest")
[Link]("robustbase")
#Activar paquetes
library(ggpubr)
library(mctest)
library(performance)
library(see)
library(readxl)
library(ggplot2)
library(gridExtra)
library(moments)
library(lmtest)
library(robustbase)
#cargamos la base de datos
datos <- read_excel("data_personas_mayores.xlsx")
str(datos)
#Supuestos para regresión lineal
# 1) Linealidad
# Si presentas una variable categórica independiente no es necesario evaluar linealidad
#Regresión lineal simple
ggscatter(x="Soledad", y="Apoyo_social", data=datos,
add="[Link]", [Link] =
list(color = "blue", fill = "gray70"))
#Regresión lineal cuando la variable independiente es numérica
# Regresión lineal multiple
model_multiple<- lm(Apoyo_social ~ Depresion + Edad ,
data = datos)
plot1 <- ggplot(data = datos, aes(Depresion, model_multiple$residuals)) +
geom_point() + geom_smooth(color = "red") + geom_hline(yintercept = 0) +
theme_bw()
plot2 <- ggplot(data = datos, aes(Edad, model_multiple$residuals)) +
geom_point() + geom_smooth(color = "red") + geom_hline(yintercept = 0) +
theme_bw()
[Link](plot1,plot2)
# solo utilizar cuando la variable independiente es categórica
plot3 <- ggplot(data = base2, aes([Link](sexofem), model_multiple$residuals)) +
geom_point() + geom_smooth(color = "red") + geom_hline(yintercept = 0) +
theme_bw()
# 2) Distribución normal de residuos
# Modelo lineal simple
#histograma
hist(residuals(model_multiple))
#Grafico de quantiles:
qqnorm(residuals(model_multiple))
qqline(residuals(model_multiple))
# método de significancia
[Link](residuals(model_multiple))
# 3) Homocedasticidad (igualdad de varianzas)
#Prueba estadística de Breusch-Pagan
bptest(model_multiple)
# 4) multicolinealidad -Factor de inflación de la varianza VIF (Multivariada)
x<-check_collinearity(model_multiple)
plot(x)# los valores de VIF <10
datos <- read_excel("data_personas_mayores.xlsx")
# Modelo de regresión robusto
robust_model <-lmrob(Depresion ~ Soledad +Apoyo_social,
data=datos)
# Obtienes valores de coeficiente beta no estandarizados
summary(robust_model)
# Modelo para obtener coeficientes beta estandarizados
datos_std <- [Link](scale(datos[, c("Depresion", "Soledad", "Apoyo_social")]))
robust_model <-lmrob(Depresion ~ Soledad +Apoyo_social,
data=datos_std)
summary(robust_model)