[R] Sorting a matrix in an odd way

Andy Bunn abunn at montana.edu
Tue May 13 06:18:18 CEST 2003


Hi, I have a matrix not unlike this:

foo <- matrix(,5,5)
foo[5,1] <- 1
foo[1:3,2] <- 1
foo[3:4,3] <- 1
foo[4:5,4] <- 1
foo[2:4,5] <- 1
foo
     [,1] [,2] [,3] [,4] [,5]
[1,]   NA    1   NA   NA   NA
[2,]   NA    1   NA   NA    1
[3,]   NA    1    1   NA    1
[4,]   NA   NA    1    1    1
[5,]    1   NA   NA    1   NA

I want to get a vector that is the column numbers as sorted by the first
non-NA value.
Like this: 
2,5,3,4,1

I have been able to do this by adding an index and looping the matrix by
column. Can anybody think of a cleverer way to do this?

Thanks, as always, in advance.

Andy




More information about the R-help mailing list