[R] re placing values in a matrix
Gabor Csardi
csardi at rmki.kfki.hu
Fri Feb 1 12:49:52 CET 2008
Actually, you don't need apply. If there are no NA's then it is
very easy:
m[] <- y[ col(m) ]
If you want to keep the NA's then it is a bit more tricky:
m[] <- 0*m + y[ col(m) ]
G.
On Thu, Jan 31, 2008 at 07:03:51PM -0800, dxc13 wrote:
>
> useR's,
>
> Consider:
> y <- c(20, 25, 30)
> > m <- matrix(c(0.0,1,NA,0.5,1.25,0.75, 0.5, NA,
> > NA),byrow=TRUE,nrow=3,ncol=3)
> > m
> [,1] [,2] [,3]
> [1,] 0.0 1.00 NA
> [2,] 0.5 1.25 0.75
> [3,] 0.5 NA NA
>
> For each numeric value, I want to replace them with their corresponding
> y-value. The result should look like (here, each row represents a variable
> rather than the columns):
> [,1] [,2] [,3]
> [1,] 20 25 NA
> [2,] 20 25 30
> [3,] 20 NA NA
>
> Does anyone know how I can do this using apply()? Or is there an easier
> way? Thanks in advance.
>
> Derek
> --
> View this message in context: http://www.nabble.com/replacing-values-in-a-matrix-tp15219764p15219764.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.
--
Csardi Gabor <csardi at rmki.kfki.hu> UNIL DGM
More information about the R-help
mailing list