make zero some rows of a matrix

2 visualizzazioni (ultimi 30 giorni)
mohammad
mohammad il 17 Set 2011
It's neede to make zero those rows of a matrix that matrix(i,2) is 2 value less than matrix(1,2). 'matrix' has 2 column and 10000 rows. I wrote this but i don't know for what doesn't work
for i=1:size(r,1)
if r(i,2)-r(1,2)<2
r(i,2)=0;
end
end
  2 Commenti
Wayne King
Wayne King il 17 Set 2011
I'm not sure I understand the condition you want to test correctly, because assume that r(1,2)=6 and r(i,2)=5 for some i not equal to 1. Then,
r(i,2)-r(1,2)<1 is true (5-6 < 1), but r(i,2) is not "2 value less than r(1,2)".
So what exactly do you want to test?
mohammad
mohammad il 17 Set 2011
edit
sorry there was a typing wrong

Accedi per commentare.

Risposta accettata

Andrei Bobrov
Andrei Bobrov il 17 Set 2011
r(r(1,2)-r(:,2)>=2,:) = 0
  2 Commenti
mohammad
mohammad il 17 Set 2011
really nice
thanks
mohammad
mohammad il 17 Set 2011
i don't know but when i equal a=r(1,2) and use a instead of r(1,2), matlab works!

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by