One way to use variable names in functions like Predict() that do not evaluate their arguments in the standard way is to use do.call() along with as.name(). E.g., varName<-"age" do.call("Predict", list(fit, as.name(varName), np=4))}) gives the same result as Predict(fit, age, np=4)
Bill Dunlap TIBCO Software wdunlap tibco.com On Tue, May 26, 2015 at 3:14 AM, wong jane <jane.wong...@gmail.com> wrote: > There are functions which use variable names as parameters in some R > packages. However, if the variable name is stored in another variable, how > can I pass this variable to the function. Taking the "rms" package as an > example: > > library(rms) > n <- 1000 > age <- rnorm(n, 50, 10) > sex <- factor(sample(c('female','male'), n,TRUE)) > > y <- rnorm(n, 200, 25) > ddist <- datadist(age, sex) > options(datadist='ddist') > fit <- lrm(y ~ age) > Predict(fit, age, np=4) > options(datadist=NULL) > > Here "age" was a variable name passed to Predict() function, but if "age" > was stored in variable "var", that is, var <- "age", how can I pass "var" > to Predict() function? The purpose is that I want to change the parameter > of Predict() in a loop. > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.