Roberto Perdisci wrote:
Hello everybody,
after searching around for quite some time, I haven't been able to
find a package that provides a function to compute the Windorized mean
and variance. Also I haven't found a function that computes the
trimmed variance. Is there any such package around?
Hi Roberto,
The Winsorized variance is similar to the trimmed variance, except that
the extreme values are substituted rather than dropped. Define the
quantiles within which you want to retain the original values and then
substitute the values at the quantiles for all values more extreme in
the respective sign direction. Like this:
testdat<-rnorm(20)
winsorVar<-function(x,probs=c(0.05,0.95)) {
xq<-quantile(x,probs=probs)
x[x < xq[1]]<-xq[1]
x[x > xq[2]]<-xq[2]
return(var(x))
}
Jim
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.