[R] minimum of each row in a matrix
Sarah Goslee
sarah.goslee at gmail.com
Tue May 8 15:23:35 CEST 2007
Check out the help for apply, particularly the MARGIN argument:
minOfRows=apply(a, 1, function(x) min(x[x!=0]) )
maxOfRows=apply(a, 1, function(x) max(x) )
Sarah
On 5/8/07, Schmitt, Corinna <Corinna.Schmitt at igb.fraunhofer.de> wrote:
> Hallo,
>
> I just followed the discussion of the title: minimum from matrix.
> I have a similar problem.
>
> > a=matrix(c(0,2, 0, 0, 1, 3, 0, 3, 2, 0, 3, 5, 0, 4, 0, 0),ncol=4)
> > a=rbind(a,1:4)
> > a
> [,1] [,2] [,3] [,4]
> [1,] 0 1 2 0
> [2,] 2 3 0 4
> [3,] 0 0 3 0
> [4,] 0 3 5 0
> [5,] 1 2 3 4
> >
> > minOfColumns=apply(a, 2, function(x) min(x[x!=0]) )
> > minOfColumns
> [1] 1 1 2 4
> > maxOfColumns=apply(a, 2, function(x) max(x) )
> > maxOfColumns
> [1] 2 3 5 4
> >
>
> How looks like the command for the minimum of the rows? I tried several
> possibilities with apply but did not get the wanted result. The result
> should be minOfRows = 0 0 0 0 1
>
> Thanks,
> Corinna
>
--
Sarah Goslee
http://www.functionaldiversity.org
More information about the R-help
mailing list