On Sep 6, 2008, at 6:07 PM, Ben Bolker wrote:

shalu <shahlar <at> hotmail.com> writes:

I am trying to define 25 vectors of varying lengths, say y1 to y25 in a loop, and then store the results of some computations in them. My problem is about
using some sort of concatenation for names. For example, instead of
initializing each of y1 through y25, I would like to do it in a loop.
Similar to cat and paste for texts, is there anyway of using y"i" for the vector name where i ranges from 1 to 25, so ultimately it refers to the
vector y1,..,y25?
Varying lengths is not a problem. To start with each has only length 1 and
then I will be adding to each vector based on some results.

 I think this is essentially

http://cran.r-project.org/doc/FAQ/R-FAQ.html
#How-can-I-turn-a-string-into-a-variable?

[URL broken in order to make Gmane happy, reassemble it
in your browser]

 the short answer: assign(), but it would work better
to use a list instead.

It may help to consider these options:

> varnames <- paste("y", 1:25, sep="")
> varnames
[1] "y1" "y2" "y3" "y4" "y5" "y6" "y7" "y8" "y9" "y10" "y11" "y12" "y13" "y14" "y15" "y16" "y17" "y18" "y19"
[20] "y20" "y21" "y22" "y23" "y24" "y25"
> varlist <- list(paste("varbl", 1:25, sep=""))
> varlist
[[1]]
[1] "varbl1" "varbl2" "varbl3" "varbl4" "varbl5" "varbl6" "varbl7" "varbl8" "varbl9" "varbl10" "varbl11" [12] "varbl12" "varbl13" "varbl14" "varbl15" "varbl16" "varbl17" "varbl18" "varbl19" "varbl20" "varbl21" "varbl22"
[23] "varbl23" "varbl24" "varbl25"

--
David Winsemius

______________________________________________
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