[R] passing field name parameter to function
jholtman at gmail.com
Sun Oct 11 03:31:44 CEST 2009
You need to understand how accessing elements of a dataframe happen,
especially the '[[' operator (?"[[")
x <- function(dataFrame, name) dataFrame[[name]]
On Sat, Oct 10, 2009 at 9:27 PM, tdm <philb at philbrierley.com> wrote:
> I am passing a data frame and field name to a function. I've figured out how
> I can create the formula based on the passed in field name, but I'm
> struggling to create a vector based in that field.
> for example if I hard code with the actual field name
> Y = df$Target, everything works fine.
> but if I use the passed in parameter name, it doesn't give me what I want,
> Y = df$mytarget
> Here is the function,
> # trying to pass field name to a function
> logistictest <- function(df,mytarget)
> #library for AUC calculation
> #build logistic model
> mytarget <- deparse(substitute(mytarget))
> myformula <- paste(mytarget," ~ .")
> myformula <- deparse(substitute(myformula))
> logistic_reg <- glm(myformula , data=df, family=binomial(link="logit"))
> print("model build OK")
> #score up
> scores <- predict(logistic_reg, type="response", df)
> print("model scored OK")
> #calc AUC
> Y = df$mytarget
> auc <- colAUC(scores,Y)
> print("auc calculated OK")
>  "model build OK"
>  "model scored OK"
> Error in as.vector(x, mode) : invalid 'mode' argument
> View this message in context: http://www.nabble.com/passing-field-name-parameter-to-function-tp25840014p25840014.html
> Sent from the R help mailing list archive at Nabble.com.
> R-help at r-project.org mailing list
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
+1 513 646 9390
What is the problem that you are trying to solve?
More information about the R-help