My thanks to Henrique Dallazuanna and Phil Spector. Both solutions worked well. Phil suggested that an alterative to my function would be vect1 = sapply(mylist,'[[',1) and I see that Henrique used `[` in his solution.
Can you point me to some documentation that discusses these usages. I have seen them before but I have never actually figured out how to use them.? Thanks. Problem and solutions ======================================================== mylist <- list(aa=c("cat","peach" ), bb=c("dog", "apple", "iron"), cc = c("rabbit", "orange", "zinc", "silk")) myfun <- function(dff) dff[1] vect1 <- unlist(lapply(mylist, myfun)) # Desired output t(cbind( c("cat" , "peach" , NA, NA), bbb <- c("dog" , "apple" ,"iron", NA), ccb <- c("rabbit" ,"orange" ,"zinc" , "silk" ))) # Phil Spector's approach mlen = max(sapply(mylist,length)) eqlens = lapply(mylist,function(x)if(length(x) < mlen) c(x,rep('',mlen-length(x))) else x) do.call(rbind,eqlens) # "Henrique Dallazuanna" <[EMAIL PROTECTED]> # I added the t() t(as.data.frame(lapply(mylist, `[`, 1:max(unlist(lapply(mylist, length)))))) [[elided trailing spam]] ______________________________________________ R-help@r-project.org mailing list 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.