robustbase (version 0.99-2)

h.alpha.n: Compute h, the subsample size for MCD and LTS

Description

Compute h(alpha) which is the size of the subsamples to be used for MCD and LTS. Given \(\alpha = alpha\), \(n\) and \(p\), \(h\) is an integer, \(h \approx \alpha n\), where the exact formula also depends on \(p\).

For \(\alpha = 1/2\), h == floor(n+p+1)/2; for the general case, it's simply n2 <- (n+p+1) %/% 2; floor(2*n2 - n + 2*(n-n2)*alpha).

Usage

h.alpha.n(alpha, n, p)

Value

numeric vector of \(h(\alpha, n,p)\); when any of the arguments of length greater than one, the usual R arithmetic (recycling) rules are used.

Arguments

alpha

fraction, numeric (vector) in [0.5, 1], see, e.g., covMcd.

n

integer (valued vector), the sample size.

p

integer (valued vector), the dimension.

See Also

covMcd and ltsReg which are defined by \(h = h(\alpha,n,p)\) and hence both use h.alpha.n.

Examples

Run this code
n <- c(10:20,50,100)
p <- 5
## show the simple "alpha = 1/2" case:
cbind(n=n, h= h.alpha.n(1/2, n, p), n2p = floor((n+p+1)/2))

## alpha = 3/4 is recommended by some authors :
n <- c(15, 20, 25, 30, 50, 100)
cbind(n=n, h= h.alpha.n(3/4, n, p = 6))

Run the code above in your browser using DataLab