Hi Dimitri here is a quick crude way (needs some polishing)
data.frame(a = rep(x$a,sapply(sapply(x$b, strsplit, ", "), length)), b= unlist(sapply(x$b, strsplit, ", "))) Duncan Duncan Mackay Department of Agronomy and Soil Science University of New England Armidale NSW 2351 Email: home: mac...@northnet.com.au -----Original Message----- From: R-help [mailto:r-help-boun...@r-project.org] On Behalf Of Dimitri Liakhovitski Sent: Thursday, 23 April 2015 23:15 To: r-help Subject: [R] reshape data frame when one column has unequal number of entries Hello! I have my data frame x with 2 character columns: x <- data.frame(a = numeric(), b = I(list())) x[1:3,"a"] = 1:3 x[[1, "b"]] <- "a, b, c" x[[2, "b"]] <- "d, e" x[[3, "b"]] <- "f" x$a = as.character(x$a) x$b = as.character(x$b) x str(x) I need to produce this data frame: 1 a 1 b 1 c 2 d 2 e 3 f Is it possible without looping? Thank you! -- Dimitri Liakhovitski ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.