Digamos que tengo datos:
x1 <- rnorm(100,2,10)
x2 <- rnorm(100,2,10)
y <- x1+x2+x1*x2+rnorm(100,1,2)
dat <- data.frame(y=y,x1=x1,x2=x2)
res <- lm(y~x1*x2,data=dat)
summary(res)
Quiero trazar la interacción continua por continua de modo que x1 esté en el eje X y x2 esté representado por 3 líneas, una que representa x2 con una puntuación Z de 0, una con una puntuación Z de +1 y otra con una Puntaje Z de -1, con cada línea un color separado y etiquetado. ¿Cómo puedo hacer esto usando ggplot2?
Por ejemplo, podría verse más o menos así (aunque, por supuesto, con diferentes líneas de colores en lugar de diferentes tipos de líneas):
r
regression
ggplot2
interaction
russellpierce
fuente
fuente
Respuestas:
Aquí está mi versión con su conjunto de datos simulados:
Le dejo administrar los detalles sobre las etiquetas del eje x / y y el posicionamiento de la leyenda.
fuente
Calculando las estimaciones para y con un puntaje Z de 0 ( columna y0 ), -1 ( columna y1m ) y 1 ( columna y1p ):
Trazar las líneas con base
plot()
:Para usar ggplot, puede llamar a geom_line :
fuente
predict
, pero parece útil.