[R] Extract from matrix

Gavin Simpson gavin.simpson at ucl.ac.uk
Fri Feb 15 18:10:40 CET 2008


On Fri, 2008-02-15 at 08:10 -0800, _Fede_ wrote:
> Hi all.
> 
> I have certain problem with the extraction of data from matrices. I know how
> extract elements from a matrix, but what I would like to do is to extract a
> concrete number, not an element. For example if I have this matrix X:
> 
>      [,1] [,2] [,3] [,4]
> [1,]    3   13   23   33
> [2,]    9   19   29   39
> [3,]   10   20   30   40
> 
> I can do X[-2] or X[2] in order to eliminate the element of the matrix or to
> extract it, respectively.
> 
> But, what I need is to extract or to eliminate a value of the matrix. For
> example the 29.
> 
> Can I do this? How?

Is this the sort of thing you want?

> mat <- matrix(c(3,9,10,13,19,20,23,29,30,33,39,40), ncol = 4)
> mat
     [,1] [,2] [,3] [,4]
[1,]    3   13   23   33
[2,]    9   19   29   39
[3,]   10   20   30   40
> which(mat == 29)
[1] 8
> mat[which(mat == 29)]
[1] 29
> mat[which(mat == 29)] <- NA
> mat
     [,1] [,2] [,3] [,4]
[1,]    3   13   23   33
[2,]    9   19   NA   39
[3,]   10   20   30   40

HTH

G
-- 
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%
 Dr. Gavin Simpson             [t] +44 (0)20 7679 0522
 ECRC, UCL Geography,          [f] +44 (0)20 7679 0565
 Pearson Building,             [e] gavin.simpsonATNOSPAMucl.ac.uk
 Gower Street, London          [w] http://www.ucl.ac.uk/~ucfagls/
 UK. WC1E 6BT.                 [w] http://www.freshwaters.org.uk
%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%~%



More information about the R-help mailing list