convert double NaN to string NaN

72 visualizaciones (últimos 30 días)
Daneisha Blair
Daneisha Blair el 24 de Ag. de 2021
Comentada: Daneisha Blair el 24 de Ag. de 2021
Hi
I have a cell array with NaN as shown in the image. How can I convert NaN to string NaN meaning instead of of seeing NaN in the array, I want to see "NaN".
I have tried this: TC(cellfun(@(x) any(isnan(x)),TC,'UniformOutput',false)) = {"NaN"}; but no success.
Any help is appreciated.

Respuesta aceptada

KSSV
KSSV el 24 de Ag. de 2021
A = NaN(2,5) ;
C = arrayfun(@num2str,A,'UniformOutput',false)
C = 2×5 cell array
{'NaN'} {'NaN'} {'NaN'} {'NaN'} {'NaN'} {'NaN'} {'NaN'} {'NaN'} {'NaN'} {'NaN'}
  5 comentarios
Daneisha Blair
Daneisha Blair el 24 de Ag. de 2021
Wait, how can I get it in string array instead of cell array, please?
Daneisha Blair
Daneisha Blair el 24 de Ag. de 2021
I got it :) . string(arrayfun(@num2str,A,'UniformOutput',false)).

Iniciar sesión para comentar.

Más respuestas (1)

darova
darova el 24 de Ag. de 2021
Try num2str
a = {nan 1 nan};
cellfun(@num2str,a,'UniformOutput',0)
ans = 1×2 cell array
{'NaN'} {'NaN'}
  1 comentario
Daneisha Blair
Daneisha Blair el 24 de Ag. de 2021
This didn't give me quite what I was looking for.
For clarification, TC is in the structure of:
TC = {["Mercury","Gemini", "Apollo"; ...
"Skylab", "Skylab B","ISS"], ...
["Mercury","Gemini";
"Skylab","Skylab B"]}
% Output array
TC = cellfun(@(x) nan(size(x,1),1) ,TC,'UniformOutput',false)
which created double NaN
However, I want it in string NaN, like this {'NaN'}
Hope this help.

Iniciar sesión para comentar.

Categorías

Más información sobre Characters and Strings en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by