[R] How to create multi variables

David Winsemius dwinsemius at comcast.net
Thu May 15 02:02:53 CEST 2014


On May 13, 2014, at 7:22 PM, yuanzhi wrote:

> Thank you for your reply.
> 
> Yes, there is a problem according to you suggestion.
> What if the value are not numerical, e.g. I want to use the variable to
> store the results of linear regression.
> can I use
> myvec <- vector( "numeric", 10 )

If you used:

 myvec <- vector("list", 10)  # it would succeed.

# In R lists _are_ vectors (but not atomic)


> for ( i in 1:10 ) {
>  myvec[ i ] <- summary(lm(y~x)) # y and x are different values in each
> loop.
> }
> ?
> 
> you advice seems only to be available when the function left allocates a
> numerical value to the variable, what if the function return other type of
> objects?

You need more study with  R programming basic texts.

-- 
David.
> 
> 
> 
> 
> Jeff Newmiller wrote
>> What is wrong with
>> 
>> myvec <- vector( "numeric", 10 )
>> for ( i in 1:10 ) {
>>  myvec[ i ] <- i
>> }
>> 
>> ?
>> 
>> If you are using assign, IMHO you are probably doing whatever you are
>> doing wrong.
>> 
>> If you want named elements, give the vector names:
>> 
>> names( myvec ) <- paste0( "t", 1:10 )
>> 
>> and you can refer to them
>> 
>> myvec[ "t3" ]
>> 
>> Go read the "Introduction to R" document again... particularly the
>> discussion of indexing.
>> ---------------------------------------------------------------------------
>> Jeff Newmiller                        The     .....       .....  Go
>> Live...
>> DCN:<
> 
>> jdnewmil at .ca
> 
>> >        Basics: ##.#.       ##.#.  Live Go...
>>                                      Live:   OO#.. Dead: OO#..  Playing
>> Research Engineer (Solar/Batteries            O.O#.       #.O#.  with
>> /Software/Embedded Controllers)               .OO#.       .OO#. 
>> rocks...1k
>> --------------------------------------------------------------------------- 
>> Sent from my phone. Please excuse my brevity.
>> 
>> On May 13, 2014 5:47:12 PM PDT, Yuanzhi Li <
> 
>> Yuanzhi.Li@
> 
>> > wrote:
>>> Hi, everyone
>>> 
>>> I want to create a series of variables (e.g. t1, t2..., t10) which
>>> could 
>>> be used in loops. My idea is to use function "assign"
>>> 
>>> for (i in 1:10)
>>> {
>>>  assign(paste("t",i,sep=""), FUN) # allocate the value from FUN to 
>>> variable ti
>>> }
>>> 
>>> But when I create a vector containing the names of these variables and 
>>> want to use the variables according to the subscript, it doesn't works.
>>> 
>>> t<-noquote(paste("t",1:10,sep=""))
>>> t[1]
>>> t1
>>> it returns only the name of variable t1, but not the value allocated to
>>> 
>>> t1 by FUN. So what should I do to realize this?
>>> 
>>> Or is there any better way to do this?
>>> 
>>> Can we define a series of variables which can be used according to the 
>>> subscript like
>>> t<-f(t1, t2..., t10),
>>> then we have 10 variables which can be used directly?
>>> for(i in 1:10)
>>> {
>>> t[i]<-FUN# with the fines variables we can directly assign the value 
>>> of FUN to ti
>>> }
>>> These are just my thoughts, I don't know whether there are available R 
>>> codes to realized it. I am looking forward any help from you.
>>> 
>>> Thanks in advance!
>>> 
>>> Yuanzhi
>>> 
>>> ______________________________________________
>>> 
> 
>> R-help@
> 
>> 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.
>> 
>> ______________________________________________
> 
>> R-help@
> 
>> 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.
> 
> 
> 
> 
> 
> --
> View this message in context: http://r.789695.n4.nabble.com/How-to-create-multi-variables-tp4690465p4690470.html
> Sent from the R help mailing list archive at Nabble.com.
> 
> ______________________________________________
> 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.

David Winsemius
Alameda, CA, USA



More information about the R-help mailing list