being equal two matrics contaning NaNs and numbers smaller than 1

1 vue (au cours des 30 derniers jours)
som
som le 2 Oct 2012
Hi all,
I have two matrics e.g. "a" & "b", which contains some "NaN" elements and numbers less than 1.
a=[NaN 0.4539 0.4532; NaN 0.4536 NaN]; b=[NaN 0.4533 0.4538; NaN 0.4531 NaN];
I want to see if "a" and "b" are equal with NaNs values ? the desired decimal places is 3.
How can I write such program?
thanks in advance,

Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 2 Oct 2012
Modifié(e) : Azzi Abdelmalek le 2 Oct 2012
a=round(a*1000)/1000;
b=round(b*1000)/1000;
a(isnan(a))=0;
b(isnan(b))=0;
test=all(all((a==b)))
% if test =1 then a=b
  4 commentaires
Azzi Abdelmalek
Azzi Abdelmalek le 2 Oct 2012
the answer isequalwithequalnans(a,b) was suggested and deleted.
Teja Muppirala
Teja Muppirala le 3 Oct 2012
Recent versions now have the ISEQUALN function, which is exactly the same thing as ISEQUALWITHEQUALNANS except the name is much easier to type.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Logical dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by