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

조회 수: 11 (최근 30일)
Tessa
Tessa 2014년 12월 9일
답변: Tessa 2014년 12월 9일
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);

채택된 답변

Giorgos Papakonstantinou
Giorgos Papakonstantinou 2014년 12월 9일
편집: Giorgos Papakonstantinou 2014년 12월 9일
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.

추가 답변 (1개)

Tessa
Tessa 2014년 12월 9일
Hero! Thank you :)

카테고리

Help CenterFile Exchange에서 Analysis of Variance and Covariance에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by