[R] quantiles on rows of a matrix

Bill.Venables at csiro.au Bill.Venables at csiro.au
Thu Jul 8 00:58:02 CEST 2010


apply(matrix1, 1, quantile, probs = c(0.05, 0.9),  na.rm = TRUE)

may be what you are looking for.

-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On Behalf Of Jim Bouldin
Sent: Thursday, 8 July 2010 8:52 AM
To: R help
Subject: [R] quantiles on rows of a matrix


I'm trying to obtain the mean of the middle 95% of the values from each row
of a matrix  (that is, the highest and lowest 2.5% of values in each row
are removed before calculating the mean).  I am having all sorts of
problems with this; for example the command:

apply(matrix1,1,function(x) quantile(c(.05,.90),na.rm=T)) 

returns the exact same quantile values for each row, which is clearly
wrong.  But even if the values were right, I'm not sure how I would then
translate those quantile values into another apply function to get the
mean, since they differ from row to row.

I also tried:
apply(matrix,1,mean,na.rm=T,trim=.05))
and the trim argument was simply ignored


Stumped. Any help appreciated. Thanks.


Jim Bouldin, PhD
Research Ecologist
Department of Plant Sciences, UC Davis
Davis CA, 95616
530-554-1740

______________________________________________
R-help at 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.



More information about the R-help mailing list