Re: [R] Determining response variable in a formula

From: ronggui <0034058_at_fudan.edu.cn>
Date: Wed 13 Jul 2005 - 01:00:33 EST


is it what you want?
>dat<-data.frame(x=rnorm(10),y=rnorm(10),z=rnorm(10))
> my.form <- as.formula(y ~ x + z)
> my.form
y ~ x + z
> m<-model.frame(my.form,data=dat)
> model.extract(m,"response")

         1 2 3 4 5 6 7 -0.3434826 1.0145622 -0.4749584 0.4018080 -0.3039126 -0.8180650 0.5455521

         8 9 10
 1.1460328 0.8038568 1.1092655

>I have a formula from which I want to deduce the name of the response
>variable. One way of doing so is as follows:
>
>> my.form <- as.formula("y ~ x + z")
>> all.vars(my.form)[1]
>[1] "y"
>>
>
>Is there a better way and/or preferrred method of determining "y" from
>my.form than this one? In messing around with terms, I came up with:
>
>> all.vars(terms(my.form))[attr(terms(my.form), "response")]
>[1] "y"
>>
>
>But that seems too ugly to be best.
>
>Thanks,
>
>Dave Kane
>
>> R.version
> _
>platform i686-pc-linux-gnu
>arch i686
>os linux-gnu
>system i686, linux-gnu
>status
>major 2
>minor 1.0
>year 2005
>month 04
>day 18
>language R
>>
>
>______________________________________________
>R-help@stat.math.ethz.ch mailing list
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

2005-07-12



Deparment of Sociology
Fudan University

Blog:http://sociology.yculblog.com



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Wed Jul 13 01:35:53 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:33:34 EST