How do I replace zeroes in a <logical> 0 and 1 array with NaNs?

7 Ansichten (letzte 30 Tage)
Hey,
I have a logical array with ones and zeroes and now I would like to replace the zeroes with NaNs but can´t find the right commend.
A(A==0) = nan; NaN's cannot be converted to logicals.
A(~A) = NaN; NaN's cannot be converted to logicals.
Also tried this: A=num2cell(A);
Who can help me out?
Greetings, A matlab hero :) A=num2cell(A);

Akzeptierte Antwort

Giorgos Papakonstantinou
Giorgos Papakonstantinou am 9 Dez. 2014
Bearbeitet: Giorgos Papakonstantinou am 9 Dez. 2014
It didn't work because you were trying to replace logical values (the zeros/false) with doubles (the NaN). So first, convert the A array to double.
A = double(A);
A(A==0) = NaN; % or A(~A)=NaN
Of course A will not be a logical anymore.

Weitere Antworten (1)

Tessa
Tessa am 9 Dez. 2014
Hero! Thank you :)

Kategorien

Mehr zu Analysis of Variance and Covariance finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by