assign values from logial vector to a new matrix with the same size

function B = functionA(A)
B = zeros(size(A));
D= A>0;
B = A(D);
I want to assign the values of A that met the condition (>0) to a matrix B of the same size as A. I wand a matrix B with zeros, the same size as A and the values of matrix A. Does anyone has a hint how to do this?

Answers (2)

You can use an indexing variable like D on both the left and right side of an assignment. If I understand your questions, you can get what you want by changing the last line of your sample code to the following:
B(D) = A(D);

Categories

Tags

Asked:

on 25 Feb 2018

Answered:

on 8 Mar 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!