Logical comparison (>= to be specific) between each element (row) of a column vector, and all elements inside each row of a matrix having same number or rows, respectively
8 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Jonathan Morcos
el 25 de Nov. de 2020
Comentada: Jonathan Morcos
el 25 de Nov. de 2020
I am wondering if there is a better/faster way to do this, perhaps without a for loop?
Say, I have a 30x50 matrix A, and a 30x1 column vector B. I want to procuce a 30x50 logical matrix C, where each element of C is 1 if the corresponding element of A is greater than or equal to the element of B located on the same row as that element.
For a small example:
>> A = [1 2 3 4 5 6; 7 8 9 10 11 12; 13 14 15 16 17 18];
B = [4 10 16]';
%numbers are in ascending order to simplify example
C = false(3,6);
c = 1;
for k = B'
C(c,:) = (A(c,:) >= k);
c = c + 1;
end
The output:
C
C =
3×6 logical array
0 0 0 1 1 1
0 0 0 1 1 1
0 0 0 1 1 1
0 comentarios
Respuesta aceptada
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!