On Thu, 2004-07-29 at 12:38, [EMAIL PROTECTED] wrote:
> Dear All,
> Help is needed! I have a matrix with frequencies of fish larvae per length 
> class (var. sl) and age-group (var. median.no) obtained with 
> 
> >k<-table(cut(sl,(5:22)),median.no)
> >k[2:5,1:5] #to ilustrate k
> 
>         4  5  6  7 
> (6,7]   3  1  0  0
> (7,8]   3  0  1  0
> (8,9]   3  4  3  5
> (9,10]  3 15  7 13
> 
> from this matrix I would like to obtain the mean age per length class i.e. 
> vector of line means. How can I do this? If, instead of the means I wanted the 
> variances, how could I do it?
> Thanks in advance,
> Eduardo Esteves
> 

Ol� Edu,

To compute that kind of statistics it's better to have a vector with
your length values (you can get it from the names of your matrix if you
prefer). I supose you want to use the mean length interval so you can
use the weigthed.mean function

len <- seq(6.5,9.5,1)

lenbar <- apply(k, 2, FUN=function(x){weighted.mean(len,x)}) 

to get variances you can use

lenvar <- apply(k, 2, FUN=function(x){var(rep(len,x))})

I think you may also use cov.wt but I'm not sure.

A more interesting result can be 

lendesc <- apply(k, 2, FUN=function(x){
        vec <- rep(len,x)       
        c(summary(vec), var=var(vec), mad=mad(vec))
})

I'm sure there are better and more elegant ways of doing this but here
you have a "quick fix" for you're problem.

Abra�os amigos

EJ

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to