Duncan's solution works for me. I strongly suspect that you have not read the Help file for xtabs carefully enough. Does the "time" column in D consist of a vector of counts?
> A <- factor(c("A","A","B","B")) > B <- factor(c(1,2,1,2)) > D <- data.frame(A,B) > D$time <- c(10,12,14,16) > tab(A,B) B A 1 2 A 10 12 B 14 16 -- Bert On Mon, Dec 20, 2010 at 11:02 AM, Luca Meyer <lucam1...@gmail.com> wrote: > Hi Duncan, > > Yes, A and B are columns in D. Having said that I and trying to avoid > > tab(D$A,D$B) > > and I would prefer: > > tab(A,B) > > Unfortunately the syntax you suggest is giving me the same error: > > Error in eval(expr, envir, enclos) : object "A" not found > > I have tried to add some deparse() but I have got the error over again. The > last version I have tried: > > function(x,y){ > z <- substitute(time ~ x + y, list(x = deparse(substitute(x)), y = > deparse(substitute(y)))) > xtabs(z, data=D) > > gives me another error: > > Error in terms.formula(formula, data = data) : > formula models not valid in ExtractVars > > Any idea on how I should modify the function to make it work? > > Thanks, > Luca > > > Il giorno 20/dic/2010, alle ore 19.28, Duncan Murdoch ha scritto: > >> On 20/12/2010 1:13 PM, Luca Meyer wrote: >>> I am trying to pass a couple of variable names to a xtabs formula: >>> >>> > tab<- function(x,y){ >>> xtabs(time~x+y, data=D) >>> } >>> >>> But when I run: >>> >>> > tab(A,B) >>> >>> I get: >>> >>> Error in eval(expr, envir, enclos) : object "A" not found >>> >>> I am quite sure that there is some easy way out, but I have tried with >>> different combinations of deparse(), substitute(), eval(), etc without >>> success, can someone help? >> >> I assume that A and B are columns in D? If so, you could use >> >> tab(D$A, D$B) >> >> to get what you want. If you really want tab(A,B) to work, you'll need to >> do messy work with substitute, e.g. in the tab function, something like >> >> fla <- substitute(time ~ x + y, list(x = substitute(x), y = substitute(y)) >> xtabs(fla, data=D) >> >> Duncan Murdoch > > ______________________________________________ > 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. > -- Bert Gunter Genentech Nonclinical Biostatistics ______________________________________________ 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.