If statement for matrix
Afficher commentaires plus anciens
I have a matrix of 73 rows andd 12 columns having different values to each cell. I want to assign if cell value=0.5 display "0, else if cell value >=0.5 display "+1" else cell value<=0.5 display "-1". I tried following, but gives only one value.1,1 cell value is -0.5438.
if B==0.5;
disp='0';
elseif B>=0.5;
disp='+1';
else
disp='-1'
end
Réponses (1)
If you want to change array values, why are you using disp()?
This will produce the output of the same size:
A = rand(4,3); % a test array
A(1) = 0.5 % make sure at least one is exactly 0.5
B = sign(A-0.5) % simple numeric output
If for some reason, you want a bunch of text output:
cmap = {'-1','0','+1'};
Btext = cmap(sign(A-0.5)+2) % cellchar output
Catégories
En savoir plus sur Logical dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!