I would like to calculate quantiles for each combination of two categorical variables. E.g.
df <- data.frame(x=1:100, y=c(rep("A", 50), rep("B", 50)), y2=c(rep("C", 25), rep("D", 25),rep("E", 25), rep("F", 25)))
I tried solution shown in Use ntile() with group_by() with dplyr by extending to group_by(y,y2) %>% mutate(z=ntile(x,2))
but did not get the expected result of two quantile groups per combination of y
and y2
.
df1 <- df %>%
group_by(y) %>% mutate(z = ntile(x, 2))
df2 <- df %>%
group_by(y,y2) %>% mutate(z = ntile(x, 2))
df1 == df2 #suggests they are identical