Daren Tan wrote:
> I want the matrix to look like this:
>  
>       [,1] [,2] [,3] [,4]
> [1,] "1" "2" "3"
> [2,] "1" "2" [3,] "1" "2" "4" "5"
>  
> I tried to use do.call(rbind, strings) but failed due to unequal row lengths.
>   
you can't {r,c}bind them because of different lengths.
one way to reach the goal is to pad all vectors with some dummy value
(NA, say), and then bind them.

one way (assuming strings is the list you get out of strsplit):

lengths = sapply(strings, length)
ncol = max(lengths)

t(
    mapply(
       function(vector, length)
            c(vector, rep(NA, ncol-length)),
       strings,
       lengths))

there may be a better way, though.

vQ

______________________________________________
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.

Reply via email to