Isaac Kohane wrote:
> Forgive me if this is obvious:
> 
>       I have a frame of data with the variables in each column (e.g.  
> Discrete_Variable1, ContinuousVariable_1, ContinuousVariable_2,  ...   
> ContinuousVariable_n)
> 
>       and I want to create a model using lrm i.e.
>       model <- lrm(Discrete_Variable1 ~ ContinuousVariable_1,  
> data=lotsofdata)
> 
>       Is there a syntax for having all the continuous variables referenced  
> in the formula without having to enumerate them all?
> 
>       I've seen the ~ . notation but when I try
> 
> 
>       model <- lrm(Discrete_Variable1 ~  ., data=lotsofdata)
> 
>       I get this error:
> 
>       Error in terms.formula(formula, specials = "strat") :
>       '.' in formula and no 'data' argument
>       
> 
>       Any help is appreciated.
> 
> -Zak

It may be best to write a function to determine what is continuous (>= 
10 unique values for example, and numeric) and to run sapply on that 
function, over your data frame.  Then you could use lrm(y ~ ., 
data=mydata[continuous]) if it were not for a problem with lrm which 
Charles Thomas Dupont (the Design package maintainer) and I will work 
on.  Until then you can write a command to compose a formula, e.g.,

form <- as.formula(paste('y', paste(names(mydata)[continuous], 
collapse='+'), sep='~'))
lrm(form, data=mydata)


-- 
Frank E Harrell Jr   Professor and Chair           School of Medicine
                      Department of Biostatistics   Vanderbilt University

______________________________________________
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
and provide commented, minimal, self-contained, reproducible code.

Reply via email to