It's exactly what I was looking for, thanks. I'm replying to the whole list so others can skip this question, to not waste time on it.
Bonne fin de journée de Montréal (nous sommes le matin ici) On Fri, May 3, 2024 at 10:30 AM Marc Girondot <marc_...@yahoo.fr> wrote: > Is it what you want ? > mat_letters <- matrix(data=c('A', 'B', 'C', 'D'), ncol=2, byrow=TRUE) > mat_bools <- matrix(data=c(FALSE, TRUE, TRUE, FALSE), ncol=2, byrow=TRUE) > > ifelse(mat_bools, mat_letters, "") > ifelse(mat_bools, mat_letters, NA) > > > ifelse(mat_bools, mat_letters, "") > [,1] [,2] > [1,] "" "B" > [2,] "C" "" > > ifelse(mat_bools, mat_letters, NA) > [,1] [,2] > [1,] NA "B" > [2,] "C" NA > > Marc > > > > Le 03/05/2024 à 14:47, DynV Montrealer a écrit : > > Is there a way to get a copy of a matrix only for TRUE entries of a > matching size boolean matrix? For **example**: > > mat_letters <- matrix(data=c('A', 'B', 'C', 'D'), ncol=2, byrow=TRUE) > mat_letters > > [,1] [,2] > [1,] "A" "B" > [2,] "C" "D" > > mat_bools <- matrix(data=c(FALSE, TRUE, TRUE, FALSE), ncol=2, byrow=TRUE) > mat_bools > > [,1] [,2] > [1,] FALSE TRUE > [2,] TRUE FALSE > *Reminder:* The following is only an example ; the solution might look very > different. > some_command(mat_letters, mat_bools, false=empty) > [,1] [,2] > [1,] "" "B" > [2,] "C" "" > some_command(mat_letters, mat_bools, false=na) > [,1] [,2] > [1,] NA "B" > [2,] "C" NA > > > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.