From noreply at r-forge.r-project.org Mon Apr 4 09:26:57 2016 From: noreply at r-forge.r-project.org (noreply at r-forge.r-project.org) Date: Mon, 4 Apr 2016 09:26:57 +0200 (CEST) Subject: [Vegan-commits] r2997 - in pkg/vegan: . R inst man Message-ID: <20160404072657.B90A3180506@r-forge.r-project.org> Author: jarioksa Date: 2016-04-04 09:26:57 +0200 (Mon, 04 Apr 2016) New Revision: 2997 Modified: pkg/vegan/NAMESPACE pkg/vegan/R/add1.cca.R pkg/vegan/R/anova.cca.R pkg/vegan/R/anova.ccalist.R pkg/vegan/R/drop1.cca.R pkg/vegan/R/eigenvals.R pkg/vegan/R/ordiR2step.R pkg/vegan/R/ordistep.R pkg/vegan/inst/NEWS.Rd pkg/vegan/man/cca.Rd Log: Merge branch 'cran-2.3' into r-forge-svn-local Modified: pkg/vegan/NAMESPACE =================================================================== --- pkg/vegan/NAMESPACE 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/NAMESPACE 2016-04-04 07:26:57 UTC (rev 2997) @@ -388,6 +388,7 @@ S3method(print, summary.clamtest) S3method(print, summary.decorana) S3method(print, summary.dispweight) +S3method(print, summary.eigenvals) S3method(print, summary.humpfit) S3method(print, summary.isomap) S3method(print, summary.meandist) Modified: pkg/vegan/R/add1.cca.R =================================================================== --- pkg/vegan/R/add1.cca.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/add1.cca.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -4,6 +4,8 @@ { if (inherits(object, "prc")) stop("'step'/'add1' cannot be used for 'prc' objects") + if (is.null(object$terms)) + stop("ordination model must be fitted using formula") test <- match.arg(test) ## Default add1 out <- NextMethod("add1", object, test = "none", ...) Modified: pkg/vegan/R/anova.cca.R =================================================================== --- pkg/vegan/R/anova.cca.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/anova.cca.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -38,6 +38,8 @@ ## by cases if (!is.null(by)) { by <- match.arg(by, c("terms", "margin", "axis")) + if (is.null(object$terms)) + stop("model must be fitted with formula interface") sol <- switch(by, "terms" = anova.ccabyterm(object, permutations = permutations, Modified: pkg/vegan/R/anova.ccalist.R =================================================================== --- pkg/vegan/R/anova.ccalist.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/anova.ccalist.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -14,17 +14,20 @@ stop("same ordination method must be used in all models") else method <- method[1] - ## 2. Same response + ## 2. All models must be fitted with formula interface + if (any(sapply(object, function(x) is.null(x$terms)))) + stop("all models must be fitted with formula interface") + ## 3. Same response resp <- sapply(object, function(z) deparse(formula(z)[[2]])) if (!all(resp == resp[1])) stop("response must be same in all models") - ## 3. Same no. of observations + ## 4. Same no. of observations N <- sapply(object, nobs) if (!all(N == N[1])) stop("number of observations must be same in all models") else N <- N[1] - ## 4. Terms must be nested + ## 5. Terms must be nested trms <- lapply(object, function(z) labels(terms(z))) o <- order(sapply(trms, length)) for (i in 2:nmodels) Modified: pkg/vegan/R/drop1.cca.R =================================================================== --- pkg/vegan/R/drop1.cca.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/drop1.cca.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -4,6 +4,8 @@ { if (inherits(object, "prc")) stop("'step'/'drop1' cannot be used for 'prc' objects") + if (is.null(object$terms)) + stop("ordination model must be fitted using formula") test <- match.arg(test) out <- NextMethod("drop1", object, test="none", ...) cl <- class(out) Modified: pkg/vegan/R/eigenvals.R =================================================================== --- pkg/vegan/R/eigenvals.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/eigenvals.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -137,6 +137,17 @@ `Proportion Explained` = round(abs(vars), 5), `Cumulative Proportion`= round(cumsum(abs(vars)), 5)) out <- list(importance = importance) - class(out) <- c("summary.eigenvals", "summary.prcomp") + class(out) <- c("summary.eigenvals") out } + +## before R svn commit 70391 we used print.summary.prcomp, but now we +## need our own version that is similar to pre-70391 R function + +`print.summary.eigenvals` <- + function(x, digits = max(3L, getOption("digits") - 3L), ...) +{ + cat("Importance of components:\n") + print(x$importance, digits = digits, ...) + invisible(x) +} Modified: pkg/vegan/R/ordiR2step.R =================================================================== --- pkg/vegan/R/ordiR2step.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/ordiR2step.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -8,6 +8,8 @@ trace = TRUE, ...) { direction <- match.arg(direction) + if (is.null(object$terms)) + stop("ordination model must be fitted using formula") if (missing(scope)) stop("needs scope") ## Works only for rda(): cca() does not have (yet) R2.adjusted Modified: pkg/vegan/R/ordistep.R =================================================================== --- pkg/vegan/R/ordistep.R 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/R/ordistep.R 2016-04-04 07:26:57 UTC (rev 2997) @@ -5,6 +5,8 @@ { if (!inherits(object, "cca")) stop("function can be only used with 'cca' and related objects") + if (is.null(object$terms)) + stop("ordination model must be fitted using formula") ## handling 'direction' and 'scope' directly copied from ## stats::step() md <- missing(direction) Modified: pkg/vegan/inst/NEWS.Rd =================================================================== --- pkg/vegan/inst/NEWS.Rd 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/inst/NEWS.Rd 2016-04-04 07:26:57 UTC (rev 2997) @@ -2,6 +2,22 @@ \title{vegan News} \encoding{UTF-8} +\section{Changes in version 2.3-5}{ + \subsection{BUG FIXES}{ + \itemize{ + + \item \code{eigenvals} fails with \code{prcomp} results in + \R-devel. The next version of \code{prcomp} will have an + argument to limit the number of eigenvalues shown + (\code{rank.}), and this breaks \code{eigenvals} in \pkg{vegan}. + + \item \code{calibrate} failed for \code{cca} and friends if + \code{rank} was given. + + } % itemise + } % bug fixes +} % v2.3-5 + \section{Changes in version 2.3-4}{ \subsection{BUG FIXES}{ Modified: pkg/vegan/man/cca.Rd =================================================================== --- pkg/vegan/man/cca.Rd 2016-03-10 09:14:40 UTC (rev 2996) +++ pkg/vegan/man/cca.Rd 2016-04-04 07:26:57 UTC (rev 2997) @@ -34,7 +34,9 @@ of the model formula.} \item{X}{ Community data matrix. } \item{Y}{ Constraining matrix, typically of environmental variables. - Can be missing. } + Can be missing. It is better to use \code{formula} instead of this + argument, and some further analyses only work when \code{formula} + was used.} \item{Z}{ Conditioning matrix, the effect of which is removed (`partialled out') before next step. Can be missing.} \item{scale}{Scale species to unit variance (like correlations).} @@ -70,10 +72,13 @@ algorithm of \pkg{vegan}. The algorithm of CCA is similar, but involves standardization by row and column weights. - The functions can be called either with matrix-like entries for community - data and constraints, or with formula interface. In general, the - formula interface is preferred, because it allows a better control of - the model and allows factor constraints. + The functions can be called either with matrix-like entries for + community data and constraints, or with formula interface. In + general, the formula interface is preferred, because it allows a + better control of the model and allows factor constraints. Some + analyses of ordination results are only possible if model was fitted + with formula (e.g., most cases of \code{\link{anova.cca}}, automatic + model building). In the following sections, \code{X}, \code{Y} and \code{Z}, although referred to as matrices, are more commonly data frames. From noreply at r-forge.r-project.org Mon Apr 4 09:28:16 2016 From: noreply at r-forge.r-project.org (noreply at r-forge.r-project.org) Date: Mon, 4 Apr 2016 09:28:16 +0200 (CEST) Subject: [Vegan-commits] r2998 - www Message-ID: <20160404072816.AAE76180506@r-forge.r-project.org> Author: jarioksa Date: 2016-04-04 09:28:16 +0200 (Mon, 04 Apr 2016) New Revision: 2998 Modified: www/NEWS.html Log: update NEWS for 2.3-5 Modified: www/NEWS.html =================================================================== --- www/NEWS.html 2016-04-04 07:26:57 UTC (rev 2997) +++ www/NEWS.html 2016-04-04 07:28:16 UTC (rev 2998) @@ -7,6 +7,28 @@

vegan News

+

Changes in version 2.3-5

+ + + +

BUG FIXES

+ + + + + + +

Changes in version 2.3-4