[R] Get a copy of a matrix only for TRUE entries of a matching size boolean matrix?
Marc Girondot
m@rc_grt @end|ng |rom y@hoo@|r
Fri May 3 16:28:26 CEST 2024
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]]
More information about the R-help
mailing list