# [R] Applying functions to partitions

Titus von der Malsburg malsburg at gmail.com
Mon Feb 16 20:12:27 CET 2009

```On Mon, Feb 16, 2009 at 01:45:52PM -0500, Stavros Macrakis wrote:
> How are the blocks defined? As a priori index ranges? By factors? By
> some property of i,j? Or...?

Ok, I should have been more specific.

The blocks are defined by factors.  There's a factor for the columns and
a factor for the rows.  In the example below the column factor would be
c(1,1,1,2,3,3) and the row factor c(1,1,1,2,2,3).  In the particular
case I'm working on the matrix is square and symmetric and there's only
one factor for both.

I can figure out ways to subset the matrix, similar to what Jorge
proposed, but I'm looking for a way to get the means more or less at
once because the matrix is pretty large and doing it block-wise is too
slow.

Thanks again!

Titus

> On 2/16/09, Titus von der Malsburg <malsburg at gmail.com> wrote:
> >
> > Hi list!  I have a large matrix which I'd like to partition into blocks
> > and for each block I'd like to compute the mean.  Following a example
> > where each letter marks a block of the partition:
> >
> >      a a a d g g
> >      a a a d g g
> >      a a a d g g
> >      b b b e h h
> >      b b b e h h
> >      c c c f i i
> >
> > I'm only interested in the resulting matrix of means.  How can this be
> > done efficiently?
> >
> > Thanks!  Titus
> >
> > ______________________________________________
> > R-help at r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help