Estoy investigando si existe una relación entre el día de la semana y un valor de resultado mediante regresión lineal en R
y me gustaría saber cómo interpretar los gráficos de residuos.
Datos
Ejemplo de datos ficticios (la media y la DE se basan en datos reales que tengo):
set.seed(14)
mon <- data.frame(id=seq(6, 60*7, by=7), value = rnorm(60, 4372, 145))
tue <- data.frame(id=seq(7, 60*7, by=7), value = rnorm(60, 4433, 206))
wed <- data.frame(id=seq(1, 60*7, by=7), value = rnorm(60, 4671, 143))
thu <- data.frame(id=seq(2, 60*7, by=7), value = rnorm(60, 4555, 154))
fri <- data.frame(id=seq(3, 60*7, by=7), value = rnorm(60, 4268, 149))
sat <- data.frame(id=seq(4, 60*7, by=7), value = rnorm(60, 1579, 110))
sun <- data.frame(id=seq(5, 60*7, by=7), value = rnorm(60, 1136, 68))
startdate <- seq.Date(as.Date("2014-01-01"), by="day", length.out=(60*7) )
id <- seq(1, 60*7)
wd <- weekdays(startdate)
df <- data.frame(id, startdate, wd)
days <- rbind(mon, tue, wed, thu, fri, sat, sun)
df <- merge(df, days)
head(df)
id startdate wd value
1 1 2014-01-01 Wednesday 4593.117
2 2 2014-01-02 Thursday 4686.159
3 3 2014-01-03 Friday 4352.982
4 4 2014-01-04 Saturday 1825.172
5 5 2014-01-05 Sunday 1206.759
6 6 2014-01-06 Monday 4276.032
que se parece a
library(ggplot2)
ggplot(data=df, aes(x=startdate, y=value, colour=wd)) +
geom_point() +
geom_smooth( alpha=.3, size=1, aes(fill=wd)) +
facet_wrap(~wd)
Modelo
Modelización de los datos mediante fit <- lm(data=df, value ~ wd)
produce los coeficientes:
summary(fit)
....
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 4242.60 18.83 225.319 < 2e-16 ***
wdMonday 148.93 26.63 5.593 4.07e-08 ***
wdSaturday -2661.93 26.63 -99.965 < 2e-16 ***
wdSunday -3113.78 26.63 -116.933 < 2e-16 ***
wdThursday 299.65 26.63 11.253 < 2e-16 ***
wdTuesday 189.04 26.63 7.099 5.51e-12 ***
wdWednesday 412.52 26.63 15.492 < 2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 145.9 on 413 degrees of freedom
Multiple R-squared: 0.9896, Adjusted R-squared: 0.9894
F-statistic: 6539 on 6 and 413 DF, p-value: < 2.2e-16
El gráfico de los datos y los coeficientes parecen indicar que existe una relación entre el día de la semana y el valor del resultado.
Sin embargo, sé que también debo tener en cuenta los gráficos de residuos a la hora de interpretar la validez de un modelo. Para este ejemplo los gráficos residuales son:
par(mfrow=c(2,2))
plot(fit)
Pregunta
A través de diversos cursos/universidades/investigaciones sobre estadística (por ejemplo esta pregunta ) Sé que para un buen modelo lineal se buscan residuos homocedásticos insesgados. Pero mis conocimientos sobre este tema están un poco oxidados. Por lo tanto, ¿sugieren mis residuos que un modelo lineal no se ajusta adecuadamente a los datos? ¿O hay algún otro aspecto que debería tener en cuenta, o es que no he entendido nada?
0 votos
Sólo un inciso, la regresión lineal no le ayudará a evaluar si existe o no una relación entre el día de la semana y un valor de resultado. Sin embargo, sí le ayudará a cuantificar la linear relación entre ambos.
0 votos
@StatsStudent, sí, una distinción importante, gracias.
0 votos
Un detalle pequeño pero revelador: Tus días de la semana están ordenados alfabéticamente "viernes" ... "miércoles". Cualquier orden que respete el orden en la semana será al menos un poco más útil.