Learn R Programming

perry (version 0.3.1)

aggregate.perry: Aggregate resampling-based prediction error results

Description

Compute summary statistics of resampling-based prediction error results.

Usage

# S3 method for perry
aggregate(x, FUN = mean, select = NULL, ...)

# S3 method for perrySelect aggregate(x, FUN = mean, select = NULL, ...)

# S3 method for perryTuning aggregate(x, ...)

Arguments

x

an object inheriting from class "perry" or "perrySelect" that contains prediction error results (note that the latter includes objects of class "perryTuning").

FUN

a function to compute the summary statistics.

select

a character, integer or logical vector indicating the columns of prediction error results for which to compute the summary statistics.

for the "perryTuning" method, additional arguments to be passed to the "perrySelect" method. Otherwise additional arguments to be passed to FUN.

Value

The "perry" method returns a vector or matrix of aggregated prediction error results, depending on whether FUN returns a single value or a vector.

For the other methods, a data frame containing the aggregated prediction error results for each model is returned. In the case of the "perryTuning" method, the data frame contains the combinations of tuning parameters rather than a column describing the models.

See Also

perryFit, perrySelect, perryTuning, aggregate

Examples

Run this code
# NOT RUN {
library("perryExamples")
data("coleman")
set.seed(1234)  # set seed for reproducibility

## set up folds for cross-validation
folds <- cvFolds(nrow(coleman), K = 5, R = 10)

## compare raw and reweighted LTS estimators for
## 50% and 75% subsets

# 50% subsets
fit50 <- ltsReg(Y ~ ., data = coleman, alpha = 0.5)
cv50 <- perry(fit50, splits = folds, fit = "both",
              cost = rtmspe, trim = 0.1)

# 75% subsets
fit75 <- ltsReg(Y ~ ., data = coleman, alpha = 0.75)
cv75 <- perry(fit75, splits = folds, fit = "both",
              cost = rtmspe, trim = 0.1)

# combine results into one object
cv <- perrySelect("0.5" = cv50, "0.75" = cv75)
cv

# summary of the results with the 50% subsets
aggregate(cv50, summary)
# summary of the combined results
aggregate(cv, summary)
# }

Run the code above in your browser using DataLab