> x.1
[,1] [,2]
[1,] 1 4
[2,] 2 5
[3,] NA 6
> cbind(x.1[!is.na(x.1)], which(!is.na(x.1), arr.ind=TRUE))
row col
[1,] 1 1 1
[2,] 2 2 1
[3,] 4 1 2
[4,] 5 2 2
[5,] 6 3 2
>
Jim
__________________________________________________________
James Holtman "What is the problem you are trying to solve?"
Executive Technical Consultant -- Convergys Labs
[EMAIL PROTECTED]
+1 (513) 723-2929
Stefan Mischke
<[EMAIL PROTECTED] To:
r-help@stat.math.ethz.ch
.ch> cc:
Sent by: Subject: [R] transform
large matrix into list
[EMAIL PROTECTED]
ath.ethz.ch
06/07/2005 08:55
Dear List
I need to transform a large matrix M with many NAs into a list L with
one row for each non missing cell. Every row should contain the cell
value in the first column, and its coordinates of the matrix in column
2 and 3.
M:
x1 x2
y1 1 2
y2 4 5
y3 7 8
L:
v x y
1 1 1
4 1 2
7 1 2
2 2 1
5 2 2
8 2 3
I'm trying to do this with a loop, but since my matrix is quite large
(around 10k^2) this just takes a very long time.
There must be a more efficient and elegant way to do this. Any hints?
Thanks,
Stefan
______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide!
http://www.R-project.org/posting-guide.html
______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html