[R] Determining response variable in a formula

David Kane dave at kanecap.com
Tue Jul 12 16:43:33 CEST 2005

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.


Dave Kane

> R.version
platform i686-pc-linux-gnu
arch     i686             
os       linux-gnu        
system   i686, linux-gnu  
major    2                
minor    1.0              
year     2005             
month    04               
day      18               
language R                

More information about the R-help mailing list