[Analogue-commits] r383 - pkg/R
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Wed Oct 9 06:29:50 CEST 2013
Author: gsimpson
Date: 2013-10-09 06:29:50 +0200 (Wed, 09 Oct 2013)
New Revision: 383
Modified:
pkg/R/predict.pcr.R
Log:
argument n.boot renamed to nboot; needed to subset transformation object to get at transformed data
Modified: pkg/R/predict.pcr.R
===================================================================
--- pkg/R/predict.pcr.R 2013-10-09 02:49:41 UTC (rev 382)
+++ pkg/R/predict.pcr.R 2013-10-09 04:29:50 UTC (rev 383)
@@ -1,6 +1,6 @@
-`predict.pcr` <- function(object, newdata, ncomp = seq_len(object$ncomp),
+`predict.pcr` <- function(object, newdata, ncomp = seq_along(object$ncomp),
CV = c("none", "LOO", "bootstrap", "nfold"),
- verbose = FALSE, n.boot = 100, nfold = 5,
+ verbose = FALSE, nboot = 100, nfold = 5,
...) {
if(missing(newdata))
return(fitted(object))
@@ -17,13 +17,15 @@
want <- spp.names[want]
newdata <- newdata[, want, drop = FALSE]
## apply transformation to newdata
- newdata <- object$tranFun(newdata)
+ tf <- object$tranFun(newdata)
+ newdata <- tf$data
## do predictions
## matrix of predictions
pred <- matrix(ncol = length(ncomp), nrow = Np)
- for(j in ncomp) {
- B0 <- object$yMean - object$xMeans %*% B[, j]
- pred[, j] <- newdata %*% B[, j] + rep(B0, Np)
+ for(j in seq_along(ncomp)) {
+ comp <- ncomp[j]
+ B0 <- object$yMean - object$xMeans %*% B[, comp]
+ pred[, j] <- newdata %*% B[, comp] + rep(B0, Np)
}
} else {
stop("Other methods of crossvalidation not yet implemented")
More information about the Analogue-commits
mailing list