Marc Girondot
2024-May-03 14:28 UTC
[R] Get a copy of a matrix only for TRUE entries of a matching size boolean matrix?
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]]
DynV Montrealer
2024-May-03 14:39 UTC
[R] Get a copy of a matrix only for TRUE entries of a matching size boolean matrix?
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_grt at 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]]
Maybe Matching Threads
- Get a copy of a matrix only for TRUE entries of a matching size boolean matrix?
- Lazy evaluation of exec clause in ssh Match statement
- repeat command
- Reinterpret data without saving it to a file 1st? Check for integer stopping at 1st decimal?
- Least error-prone reading of Excel files?