Learn R Programming

cvwrapr

The goal of cvwrapr is to make cross-validation (CV) easy. The main function in the package is kfoldcv. It performs K-fold CV for a hyperparameter, returning the CV error for a path of hyperparameter values along with other useful information. The computeError function allows the user to compute the CV error for a range of loss functions from a matrix of out-of-fold predictions. See the package vignettes for more examples.

Installation

You can install the development version from GitHub with:

# install.packages("devtools")
devtools::install_github("kjytay/cvwrapr")

Example

This is a basic example showing how to perform cross-validation for the lambda parameter in the lasso (Tibshirani 1996).

# simulate data
set.seed(1)
nobs <- 100; nvars <- 10
x <- matrix(rnorm(nobs * nvars), nrow = nobs)
y <- rowSums(x[, 1:2]) + rnorm(nobs)

library(cvwrapr)
library(glmnet)

set.seed(1)
cv_fit <- kfoldcv(x, y, train_fun = glmnet, predict_fun = predict)

The returned output contains information on the CV procedure and can be plotted.

names(cv_fit)
#>  [1] "lambda"     "cvm"        "cvsd"       "cvup"       "cvlo"      
#>  [6] "lambda.min" "lambda.1se" "index"      "name"       "overallfit"
plot(cv_fit)

Copy Link

Version

Install

install.packages('cvwrapr')

Monthly Downloads

61

Version

1.0

License

GPL (>= 3)

Maintainer

Kenneth Tay

Last Published

June 11th, 2021

Functions in cvwrapr (1.0)

buildPredMat

Build a prediction matrix from CV model fits
getOptLambda

Get lambda.min and lambda.1se values
getCindex

Compute C index for a Cox model
computeRawError

Compute the nobs by nlambda matrix of errors
checkValidTypeMeasure

Check if loss function is valid for a given family
availableTypeMeasures

Display the names of the measures used in CV for different families
coxnet.deviance

Compute deviance for Cox model
getTypeMeasureName

Get full name of loss function
computeStats

Compute CV statistics
kfoldcv

K-fold cross-validation wrapper
plot.cvobj

Plot the cross-validation curve from a class `cvobj` object
print.cvobj

Print a class `cvobj` object
fid

Helper function for Cox deviance and gradient
computeError

Compute CV statistics from a prediction matrix