Hi Olga,
Here is how I would approach this problem. I hope it is instructive.
library(vegan)
data(BCI)
mod <- radfit(BCI[1,])
class(mod) #find out what mod is
methods(class="radfit") #find out what methods are available for
objects of this class. Nothing looks promising, so define a summary
method for it, based on the print method
print.radfit #look to see how the print method is defined. Copy this
function and modify it, as shown below.
summary.radfit <- function (x, digits = max(3, getOption("digits")
- 2), ...)
{
# modify the funciton to eliminate the header info
# cat("\nRAD models, family", x$family$family, "\n")
# cat("No. of species ", length(x$y), ", total abundance
",
# sum(x$y), "\n\n", sep = "")
p <- coef(x)
if (any(!is.na(p)))
p <- formatC(p, format = "g", flag = " ", digits
= digits)
p <- apply(p, 2, function(x) gsub("NA", " ", x))
aic <- sapply(x$models, AIC)
bic <- sapply(x$models, AIC, k = log(length(x$y)))
dev <- sapply(x$models, deviance)
stats <- format(cbind(Deviance = dev, AIC = aic, BIC = bic),
digits = digits, ...)
out <- cbind(p, stats)
#modify the funciton so it doesn't print the result
#print(out, quote = FALSE)
return(out) #modify the function to return the summary matrix.
}
library(xtable)
xtable(summary(mod))# enjoy the fruits of our labor!
On Fri, Feb 4, 2011 at 9:03 AM, Olga Lyashevska <olga at herenstraat.nl>
wrote:> Dear all,
>
> Using:
>
> library(vegan)
> data(BCI)
> mod <- radfit(BCI[1,])
> mod
>
> RAD models, family poisson
> No. of species 93, total abundance 448
>
> ? ? ? ? ? par1 ? ? ?par2 ? ? par3 ? ?Deviance AIC ? ? ?BIC
> Null ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 39.5261 315.4362 315.4362
> Preemption ?0.042797 ? ? ? ? ? ? ? ? ? 21.8939 299.8041 302.3367
> Lognormal ? 1.0687 ? ?1.0186 ? ? ? ? ? 25.1528 305.0629 310.1281
> Zipf ? ? ? ?0.11033 ?-0.74705 ? ? ? ? ?61.0465 340.9567 346.0219
> Mandelbrot ?100.52 ? -2.312 ? ?24.084 ? 4.2271 286.1372 293.7350
>
>
> I want to include the table shown above into the latex document ?(using
> xtable).
>
> library(xtable)
> xtable(mod)
> Error in UseMethod("xtable") :
> ?no applicable method for 'xtable' applied to an object of class
"radfit"
>
> Also is there is a way to customize the table - I want to exclude first two
> rows ?of the output and make a table of:
>
> ? ? ? ? ? par1 ? ? ?par2 ? ? par3 ? ?Deviance AIC ? ? ?BIC
> Null ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 39.5261 315.4362 315.4362
> Preemption ?0.042797 ? ? ? ? ? ? ? ? ? 21.8939 299.8041 302.3367
> Lognormal ? 1.0687 ? ?1.0186 ? ? ? ? ? 25.1528 305.0629 310.1281
> Zipf ? ? ? ?0.11033 ?-0.74705 ? ? ? ? ?61.0465 340.9567 346.0219
> Mandelbrot ?100.52 ? -2.312 ? ?24.084 ? 4.2271 286.1372 293.7350
>
>
> Many thanks,
> Olga
>
> ______________________________________________
> 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.
>
--
Ista Zahn
Graduate student
University of Rochester
Department of Clinical and Social Psychology
http://yourpsyche.org