[R] Evaluating args in a function
Gabor Grothendieck
ggrothendieck at gmail.com
Wed Sep 12 18:55:42 CEST 2007
You have a recursive reference. Try using a different name other than
class. For example, in the following we use class. with a dot at the end
(so that abbreviation of it still allows the user to write class):
fred <- data.frame()
test.fn <- function(x,class.=class(x)) {class.}
test.fn(fred) # "data.frame"
test.fn(fred, class = "x") # "x"
On 9/12/07, Sandy Weisberg <sandy at stat.umn.edu> wrote:
> Can anyone explain what I'm doing wrong here:
>
> > fred <- data.frame()
> > class(fred)
> [1] "data.frame"
> > test.fn <- function(x,class=class(x)) {class}
> > test.fn(fred)
> Error in test.fn(fred) : promise already under evaluation: recursive
> default argument reference or earlier problems?
>
> R 2.5.1 on both Windows and SUSE Linux.
>
>
> --
> Sanford Weisberg, sandy at stat.umn.edu
> Office and mailing address:
> University of Minnesota, School of Statistics
> 312 Ford Hall, 224 Church St. SE, Minneapolis, MN 55455
> 612-625-8355, FAX 612-624-8868
>
> St. Paul office:
> 146 Classroom-Office Building, 612-625-8777
>
> ______________________________________________
> R-help at 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.
>
More information about the R-help
mailing list