Hello,

How would you go about handling the following situation?
This is on R 2.12.0 on Ubuntu 32-bit.

I have a wrapper function to lm.  I want to pass in a
subset argument.  First, I just thought I'd use "...".

## make example reproducible
set.seed(123)
df1 <- data.frame(age = rnorm(100, 50, 10),
                  bmi = rnorm(100, 30, sd = 2))

## create a wrapper using "..."
testlm <- function(formula, ...) {
  lm(formula, data = df1, ...)
}

> testlm(bmi ~ age, subset = age > 50)

Error in eval(expr, envir, enclos) :
  ..1 used in an incorrect context, no ... to look in

I found some other examples of this error message,
but couldn't piece together how it fits in with this
example.

Next, I tried specifying a subset argument.

testlm2 <- function(formula, subset) {
  lm(formula, data = df1, subset = subset)
}

> testlm2(bmi ~ age, subset = age > 50)

Error in xj[i] : invalid subscript type 'closure'

I also don't understand this one.

Any pointers on if I'm just missing the easy
solution to do what I want?  Any explanations
as to the above behavior (I know it has to do
with model.frame, but not sure how) would also
be greatly appreciated!

Thanks!
--Erik

______________________________________________
R-help@r-project.org 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