Effacer les filtres
Effacer les filtres

Info

Cette question est clôturée. Rouvrir pour modifier ou répondre.

Is there a way to replace a specific NaN elements by integer where isnan would not work with steps greater than 1?

1 vue (au cours des 30 derniers jours)
Hello All,
Could you please help with this problem
I have this matrix
hh=[NaN 1 2 3 4;3 5 66 NaN 6;NaN 3 4 7 NaN; 9 NaN 8 2 NaN];
and I want to replace only the NaN in some places to an integer. I have tried this hh(isnan(hh(1:2:4,1)))=1; which should replace the NaN in element (3,1) by 1 but did not work

Réponses (1)

Walter Roberson
Walter Roberson le 4 Juil 2017
mask = isnan(hh(:, 1)); mask(2:2:end) = false;
hh(mask) = 1;
  2 commentaires
Abdulaziz Abutunis
Abdulaziz Abutunis le 4 Juil 2017
Thank you Walter, I tried your example and it will replace all the NaN in the first column. Best
Walter Roberson
Walter Roberson le 5 Juil 2017
isnan(hh(1:2:4,1)) is true for hh(1,1) so you have indicated that you do want hh(1,1) to be replaced.

Cette question est clôturée.

Community Treasure Hunt

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

Start Hunting!

Translated by