{robCompositions}Robust Methods for Compositional Datausing robCompositionsdata(expenditures)p1 <- pcaCoDa(expenditures)plot(p1)What is it?Imputation of compositional data including robust methods, methods to impute rounded zerosOutlier detection for compositional data using robust methodsPrincipal component analysis for compositional data using robust methodsFactor analysis for compositional data using robust methodsDiscriminant analysis for compositional data (Fisher rule) using robust methodsRobust regression with compositional predictorsAnderson-Darling normality tests for compositional datalog-ratio transformations (addLR, cenLR, isomLR, and their inverse transformations).In addition, visualisation and diagnostic tools are implemented as well as high and low-level plot functions for the ternary diagram.Goalsnever use classical statistical methods on raw compositional data again.Getting StartedDependenciesThe package has dependencies onR (>= 2.10), utils, robustbase, rrcov, car (>= 2.0-0), MASS, plsInstallationInstallion of robCompositions is really easy for registered users (when the R-tools are installed). Just uselibrary(devtools) install_github("robCompositions", "matthias-da")Examplesk nearest neighbor imputationdata(expenditures)expenditures[1,3]expenditures[1,3] <- NAimpKNNa(expenditures)$xImp[1,3]iterative model based imputationdata(expenditures)x <- expendituresx[1,3]x[1,3] <- NAxi <- impCoda(x)$xImpxi[1,3]s1 <- sum(x[1,-3])impS <- sum(xi[1,-3])xi[,3] * s1/impSxi <- impKNNa(expenditures)xisummary(xi)plot(xi, which=1)plot(xi, which=2)plot(xi, which=3)pcadata(expenditures)p1 <- pcaCoDa(expenditures)p1plot(p1)outlier detectiondata(expenditures)oD <- outCoDa(expenditures)oDplot(oD)transformationsdata(arcticLake)x <- arcticLakex.alr <- addLR(x, 2)y <- addLRinv(x.alr)addLRinv(addLR(x, 3))data(expenditures)x <- expendituresy <- addLRinv(addLR(x, 5))head(x)head(y)addLRinv(x.alr, ivar=2, useClassInfo=FALSE)data(expenditures)eclr <- cenLR(expenditures)inveclr <- cenLRinv(eclr)head(expenditures)head(inveclr)head(cenLRinv(eclr$x.clr))require(MASS)Sigma <- matrix(c(5.05,4.95,4.95,5.05), ncol=2, byrow=TRUE)z <- isomLRinv(mvrnorm(100, mu=c(0,2), Sigma=Sigma))