residuals.enetLTS {enetLTS}R Documentation

the residuals from the "enetLTS" object

Description

A numeric vector which returns residuals from the enetLTS object. Residuals correspond to deviances if family="multinomial" and family="binomial".

Usage

## S3 method for class 'enetLTS'
residuals(object,vers=c("reweighted","raw","both"),...)

Arguments

object

the model fit from which to extract residuals.

vers

a character string specifying for which estimator to extract outlier weights. Possible values are "reweighted" (the default) for weights indicating outliers from the reweighted fit, "raw" for weights indicating outliers from the raw fit, or "both" for the outlier weights from both estimators.

...

additional arguments from the enetLTS object.

Value

A numeric vector containing the requested residuals.

Author(s)

Fatma Sevinc KURNAZ, Irene HOFFMANN, Peter FILZMOSER
Maintainer: Fatma Sevinc KURNAZ <fatmasevinckurnaz@gmail.com>;<fskurnaz@yildiz.edu.tr>

See Also

enetLTS, fitted.enetLTS, predict.enetLTS, coef.enetLTS

Examples

## for gaussian

set.seed(86)
n <- 100; p <- 25                             # number of observations and variables
beta <- rep(0,p); beta[1:6] <- 1              # 10% nonzero coefficients
sigma <- 0.5                                  # controls signal-to-noise ratio
x <- matrix(rnorm(n*p, sigma),nrow=n)
e <- rnorm(n,0,1)                             # error terms
eps <- 0.1                                    # contamination level
m <- ceiling(eps*n)                           # observations to be contaminated
eout <- e; eout[1:m] <- eout[1:m] + 10        # vertical outliers
yout <- c(x %*% beta + sigma * eout)        # response
xout <- x; xout[1:m,] <- xout[1:m,] + 10      # bad leverage points


fit1 <- enetLTS(xout,yout)
residuals(fit1)
residuals(fit1,vers="raw")
residuals(fit1,vers="both")


## for binomial

eps <-0.05                                    # %10 contamination to only class 0
m <- ceiling(eps*n)
y <- sample(0:1,n,replace=TRUE)
xout <- x
xout[y==0,][1:m,] <- xout[1:m,] + 10;         # class 0
yout <- y                                     # wrong classification for vertical outliers



fit2 <- enetLTS(xout,yout,family="binomial")
residuals(fit2)
residuals(fit2,vers="raw")
residuals(fit2,vers="both")



## for multinomial

n <- 120; p <- 15
NC <- 3
X <- matrix(rnorm(n * p), n, p)
betas <- matrix(1:NC, ncol=NC, nrow=p, byrow=TRUE)
betas[(p-5):p,]=0; betas <- rbind(rep(0,NC),betas)
lv <- cbind(1,X) %*% betas
probs <- exp(lv)/apply(exp(lv),1,sum)
y <- apply(probs,1,function(prob){sample(1:NC, 1, TRUE, prob)})
xout <- X
eps <-0.05                          # %10 contamination to only class 0
m <- ceiling(eps*n)
xout[1:m,] <- xout[1:m,] + 10       # bad leverage points
yout <- y


fit3    <- enetLTS(xout,yout,family="multinomial")
residuals(fit3)
residuals(fit3,vers="raw")
residuals(fit3,vers="both")


[Package enetLTS version 1.1.0 Index]