mutate - libreria dplyr en r
agrupar por dos columnas en ggplot2 (3)
¿Por qué no simplemente paste
esas dos columnas y usar esa variable como grupos?
frame$grp <- paste(frame[,1],frame[,2])
Una forma algo más formal de hacer esto sería usar la interaction
funciones.
¿Es posible agrupar por dos columnas? ¿Entonces el producto cruzado es dibujado por geom_point()
y geom_smooth()
?
Como ejemplo:
frame <- data.frame(series <- rep(c(''a'', ''b''), 6), sample <- rep(c(''glass'',
''water'', ''metal''), 4), data <- c(1:12))
ggplot(frame, aes()) # ...
Tal que los puntos 6
y 12
comparten un grupo, pero no con 3
.
Tomando el ejemplo de esta pregunta , usando la interaction
para combinar dos columnas en un nuevo factor:
# Data frame with two continuous variables and two factors
set.seed(0)
x <- rep(1:10, 4)
y <- c(rep(1:10, 2)+rnorm(20)/5, rep(6:15, 2) + rnorm(20)/5)
treatment <- gl(2, 20, 40, labels=letters[1:2])
replicate <- gl(2, 10, 40)
d <- data.frame(x=x, y=y, treatment=treatment, replicate=replicate)
ggplot(d, aes(x=x, y=y, colour=treatment, shape = replicate,
group=interaction(treatment, replicate))) +
geom_point() + geom_line()
por ejemplo:
qplot(round, price, data=firm, group=id, color=id, geom=''line'') +
geom_smooth(aes(group=interaction(size, type)))