Yes, I tried to do it using assign.  I couldn't get that to work.  E.g:

> z=1:2; zz=rep("model",2);zzz = paste(zz,z,sep='');zzz
[1] "model1" "model2"
> y = 1:10; v = rnorm(10,0,2); x2 = y + v; x3 = y + v^0.5
> x = data.frame(x2,x3)
> for (i in 1:2){assign(zzz[i],lm(y~x[,i]))};zzz
[1] "model1" "model2"

stumped


On Fri, Sep 23, 2011 at 1:08 PM, R. Michael Weylandt <
michael.weyla...@gmail.com> wrote:

> The usual response to this sort of question is usually something like the
> following:
>
> assign() will do what you want; get() runs the other direction. But the
> more R way to do it is to put all the models in a list.
>
> Michael
>
> On Fri, Sep 23, 2011 at 1:03 PM, Jim Bouldin <bouldi...@gmail.com> wrote:
>
>> This has got to be incredibly simple but I nevertheless can't figure it
>> out
>> as I am apparently brain dead.
>>
>> I just want to convert the elements of a character vector to variable
>> names,
>> so as to then assign formulas to them, e.g:
>> z = c("model1","model2"); I want to assign formulas, such as lm(y~x[,1])
>> and
>> lm(y~x[,2]), to the variables "model1" and "model2".
>>
>> There are of course, many more than 2 models involved, so brute force is
>> the
>> option of absolute last resort.
>> Thanks for any help.
>> --
>> Jim Bouldin, Research Ecologist
>>
>>        [[alternative HTML version deleted]]
>>
>> ______________________________________________
>> 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.
>>
>
>


-- 
Jim Bouldin, PhD
Research Ecologist

        [[alternative HTML version deleted]]

______________________________________________
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