[R] ellipsis-related error: used in an incorrect context, no ... to look in

lith minilith at gmail.com
Tue Feb 16 15:18:07 CET 2010


Hi,

I have the following code snippet:

    require(lattice)
    f.barchart <- function(...) {
        barchart(...,
            panel = function(x, y, ...) {
                panel.barchart(x, y, ...)
            }
        )
    }

    x <- data.frame(a = c(1,1,2,2), b = c(1,2,3,4), c = c(1,2,2,1))
    f.barchart(a ~ b, data = x, groups = c)

Which results in the following error being thrown:

    ..3 used in an incorrect context, no ... to look in

When I use the following definition:

    f.barchart <- function(...) {
        substitute(barchart(...,
            panel = function(x, y, ...) {
                panel.barchart(x, y, ...)
            }
        ))
    }

I get:

    barchart(a ~ b, data = x, groups = c,
        panel = function(x, y, ...) {
            panel.barchart(x, y, a ~ b, data = x, groups = c)
        })

I'm not sure if this is the cause of above error but this would mean
that the ellipsis in panel.barchart gets wrongly expanded with the
contents of the arguments given to f.barchart and not the panel
function.

Is there a way to avoid this problem? How can I make the function
work?

I use R 2.10.1 @ win32.

Regards,
Tom



More information about the R-help mailing list