depth.space.simplicial: Calculate Depth Space using Simplicial Depth

View source: R/depth.simplicial.r

depth.space.simplicialR Documentation

Calculate Depth Space using Simplicial Depth

Description

Calculates the representation of the training classes in depth space using simplicial depth.

Usage

depth.space.simplicial(data, cardinalities, exact = F, k = 0.05, seed = 0)

Arguments

data

Matrix containing training sample where each row is a d-dimensional object, and objects of each class are kept together so that the matrix can be thought of as containing blocks of objects representing classes.

cardinalities

Numerical vector of cardinalities of each class in data, each entry corresponds to one class.

exact

exact=F (by default) implies the approximative algorithm, considering k simplices, exact=T implies the exact algorithm.

k

Number (k>1) or portion (if 0<k<1) of simplices that are considered if exact=F. If k>1, then the algorithmic complexity is polynomial in d but is independent of the number of observations in data, given k. If 0<k<1, then the algorithmic complexity is exponential in the number of observations in data, but the calculation precision stays approximately the same.

seed

The random seed. The default value seed=0 makes no changes.

Details

The depth representation is calculated in the same way as in depth.simplicial, see 'References' for more information and details.

Value

Matrix of objects, each object (row) is represented via its depths (columns) w.r.t. each of the classes of the training sample; order of the classes in columns corresponds to the one in the argument cardinalities.

References

Chaudhuri, P. (1996). On a geometric notion of quantiles for multivariate data. Journal of the American Statistical Association 91 862–872.

Liu, R. Y. (1990). On a notion of data depth based on random simplices. The Annals of Statistics 18 405–414.

Rousseeuw, P.J. and Ruts, I. (1996). Algorithm AS 307: Bivariate location depth. Journal of the Royal Statistical Society. Seriec C (Applied Statistics) 45 516–526.

See Also

ddalpha.train and ddalpha.classify for application, depth.simplicial for calculation of simplicial depth.

Examples

# Generate a bivariate normal location-shift classification task
# containing 20 training objects
class1 <- mvrnorm(10, c(0,0), 
                  matrix(c(1,1,1,4), nrow = 2, ncol = 2, byrow = TRUE))
class2 <- mvrnorm(10, c(1,1), 
                  matrix(c(1,1,1,4), nrow = 2, ncol = 2, byrow = TRUE))
data <- rbind(class1, class2)
# Get depth space using simplicial depth
depth.space.simplicial(data, c(10, 10))

data <- getdata("hemophilia")
cardinalities = c(sum(data$gr == "normal"), sum(data$gr == "carrier"))
depth.space.simplicial(data[,1:2], cardinalities)

ddalpha documentation built on Oct. 1, 2024, 1:07 a.m.