[R] vectors into a matrix
Bert Gunter
gunter.berton at gene.com
Mon Jan 4 20:56:42 CET 2010
This is one of those times where do.call() comes in very handy: first
convert the vector names into a list using lapply and get() and then call
do.call with cbind on the list:
do.call(cbind,lapply(paste("VD",1:12,sep=""),get))
This also illustrates the virtue of putting such vectors in a list to begin
with, as then the lapply(paste...) operation can be dispensed with, making
things much more efficient.
Bert Gunter
Genentech Nonclinical Biostatistics
-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On
Behalf Of Henrique Dallazuanna
Sent: Monday, January 04, 2010 11:00 AM
To: Victor Kyros
Cc: r-help at r-project.org
Subject: Re: [R] vectors into a matrix
Try this:
cbind(ID = as.numeric(gsub("VD", "", ls(patt = "VD\\d+"))) ,
t(sapply(ls(patt = "VD\\d+"), get)))
On Mon, Jan 4, 2010 at 3:32 PM, Victor Kyros <varenda44 at gmail.com> wrote:
> Dear all,
>
> I'm writing code to do automatically several
> calculations and gather the results in a matrix.
>
>
> I have the following vectors and
> I just want to make a matrix with them:
>
> VD1
> VD2
> VD3
> ...
> VD12
>
> *In this case, this series of vectors stops there, in 12,
> but it could be a higher number or smaller.
> (for example: VD1, VD2 and VD3; only)
> (or for example: VD1, VD2, ... till VD78)
>
> All vectors have the same length, 9.
> And vectors should be entered by row.
> Besides, I would like to add a column with the number of the vector.
>
> Something like this:
>
> 1 44 23 0.3 ...
> 2 51 27 0.8 ...
> 3 40 24 0.6 ...
> 4 47 18 0.2 ...
> 5 52 30 1.2 ...
> ... ... ... ... ...
> 12 39 22 0.5 ...
>
>
> I hope I've explained myself good enough.
> Thanks in advance for taking the time to help me.
>
> Vilen
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at 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.
>
--
Henrique Dallazuanna
Curitiba-Paraná-Brasil
25° 25' 40" S 49° 16' 22" O
______________________________________________
R-help at 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.
More information about the R-help
mailing list