alfarda.tune: Cross validation for the regularised and flexible...

View source: R/alfarda.tune.R

Cross validation for the regularised and flexible discriminant analysis with compositional data using the alpha-transformationR Documentation

Cross validation for the regularised and flexible discriminant analysis with compositional data using the \alpha-transformation

Description

Cross validation for the regularised and flexible discriminant analysis with compositional data using the \alpha-transformation.

Usage

alfarda.tune(x, ina, a = seq(-1, 1, by = 0.1), nfolds = 10,
gam = seq(0, 1, by = 0.1), del = seq(0, 1, by = 0.1),
ncores = 1, folds = NULL, stratified = TRUE, seed = NULL)

alfafda.tune(x, ina, a = seq(-1, 1, by = 0.1), nfolds = 10,
folds = NULL, stratified = TRUE, seed = NULL, graph = FALSE)

Arguments

x

A matrix with the available compositional data. Zeros are allowed.

ina

A group indicator variable for the avaiable data.

a

A vector with a grid of values of the power transformation, it has to be between -1 and 1. If zero values are present it has to be greater than 0. If \alpha=0 the isometric log-ratio transformation is applied.

nfolds

The number of folds. Set to 10 by default.

gam

A vector of values between 0 and 1. It is the weight of the pooled covariance and the diagonal matrix.

del

A vector of values between 0 and 1. It is the weight of the LDA and QDA.

ncores

The number of cores to use. If it is more than 1 parallel computing is performed. It is advisable to use it if you have many observations and or many variables, otherwise it will slow down th process.

folds

If you have the list with the folds supply it here. You can also leave it NULL and it will create folds.

stratified

Do you want the folds to be created in a stratified way? TRUE or FALSE.

seed

You can specify your own seed number here or leave it NULL.

graph

If graph is TRUE (default value) a plot will appear.

Details

A k-fold cross validation is performed.

Value

For the alfa.rda a list including:

res

The estimated optimal rate and the best values of \alpha, \gamma and \delta.

percent

For the best value of \alpha the averaged over all folds best rates of correct classification. It is a matrix, where rows correspond to the \gamma values and columns correspond to \delta values.

se

The estimated standard errors of the "percent" matrix.

runtime

The runtime of the cross-validation procedure.

For the alfa.fda a graph (if requested) with the estimated performance for each value of \alpha and a list including:

per

The performance of the fda in each fold for each value of \alpha.

performance

The average performance for each value of \alpha.

opt_a

The optimal value of \alpha.

runtime

The runtime of the cross-validation procedure.

Author(s)

Michail Tsagris.

R implementation and documentation: Michail Tsagris mtsagris@uoc.gr and Giorgos Athineou <gioathineou@gmail.com>.

References

Friedman Jerome, Trevor Hastie and Robert Tibshirani (2009). The elements of statistical learning, 2nd edition. Springer, Berlin

Tsagris M.T., Preston S. and Wood A.T.A. (2016). Improved classification for compositional data using the \alpha-transformation. Jounal of Classification, 33(2):243-261.

Hastie, Tibshirani and Buja (1994). Flexible Disriminant Analysis by Optimal Scoring. Journal of the American Statistical Association, 89(428):1255-1270.

See Also

alfa.rda, alfanb.tune, cv.dda, compknn.tune cv.compnb

Examples

library(MASS)
x <- as.matrix(fgl[, 2:9])
x <- x / rowSums(x)
ina <- fgl[, 10]
moda <- alfarda.tune(x, ina, a = seq(0.7, 1, by = 0.1), nfolds = 10,
gam = seq(0.1, 0.3, by = 0.1), del = seq(0.1, 0.3, by = 0.1) )

Compositional documentation built on Oct. 9, 2024, 5:10 p.m.