[R] Substituting numerical values using `apply'

Moshe Olshansky m_olshansky at yahoo.com
Fri Jul 10 02:18:51 CEST 2009


Let M be your matrix.

Do the following:

B <- t(matrix(colnames(a),nrow=ncol(M),ncol=nrow(M)))
B[M==0] <- NA

--- On Thu, 9/7/09, Olivella <olivella at wustl.edu> wrote:

> From: Olivella <olivella at wustl.edu>
> Subject: [R]  Substituting numerical values using `apply'
> To: r-help at r-project.org
> Received: Thursday, 9 July, 2009, 6:25 AM
> 
> Hello,
> 
> I wish to perform a substitution of certain numerical
> values in a data
> matrix with the corresponding column name. For instance, if
> I have a data
> matrix
> V1  V2  V3
> 2    0    1
> 0    1    2 
> 1    5    0
> 5    0    0 
> 
> I want to substitute the `1' and the `2' for the
> corresponding column name,
> and make everything else `NA' like this
> V1    V2    V3
> V1    NA    V3
> NA    V2    V3 
> V1    NA    NA
> NA    NA    NA 
> 
> I have done this using an explicit `for' loop, but it takes
> a really long
> time to finish. Is there any way I can do this using
> `apply' or some form of
> implicit looping?
> 
> Thank you for your help,
> 
> SO
> -- 
> View this message in context: http://www.nabble.com/Substituting-numerical-values-using-%60apply%27-tp24398687p24398687.html
> Sent from the R help mailing list archive at Nabble.com.
> 
> ______________________________________________
> R-help at r-project.org
> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained,
> reproducible code.
>




More information about the R-help mailing list