[R] Help with dplyr

Jeff Newmiller jdnewmil at dcn.davis.CA.us
Fri Nov 6 01:58:27 CET 2015

Solution is to always use the stringsAsFactors=TRUE option in your data.frame() function calls. 
Jeff Newmiller                        The     .....       .....  Go Live...
DCN:<jdnewmil at dcn.davis.ca.us>        Basics: ##.#.       ##.#.  Live Go...
                                      Live:   OO#.. Dead: OO#..  Playing
Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
/Software/Embedded Controllers)               .OO#.       .OO#.  rocks...1k
Sent from my phone. Please excuse my brevity.

On November 5, 2015 3:59:10 PM PST, Axel Urbiz <axel.urbiz at gmail.com> wrote:
>Is there a way to avoid the warning below in dplyr. I’m performing an
>operation within groups, and the warning says that the factors created
>from each group do not have the same levels, and so it coerces the
>factor to character. I’m using this inside a package I’m developing.
>I’d appreciate your recommendation on how to handle this.
>df <- data.frame(pred = rnorm(100), models = gl(2, 50, 100, labels =
>c("model1", "model2")))
>create_bins <- function (pred, nBins) {
>  Breaks <- unique(quantile(pred, probs = seq(0, 1, 1/nBins)))
>bin <- data.frame(pred = pred, bin = cut(pred, breaks = Breaks,
>include.lowest = TRUE))
>  bin
>res_dplyr <- df %>% group_by(models) %>% do(create_bins(.$pred, 10))
>Warning message:
>  In rbind_all(out[[1]]) : Unequal factor levels: coercing to character
>Thank you,
>	[[alternative HTML version deleted]]
>R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
>PLEASE do read the posting guide
>and provide commented, minimal, self-contained, reproducible code.

More information about the R-help mailing list