Replace missing cell entries without replacing whitespaces.

I'm reading an excel file using readcell, and all empty cells are imported as 'missing'.
I would like to replace the missing, and i found the following suggestions (cellfun+anonymous function)
However, this solution also marks whitespaces as missing and replaces them
A = {1, 'test123', 2, 1, 'texthere';2, 'test456', 3 ,4, missing;...
3, 'test789', missing, 1, 'text with spaces'}
A(cellfun(@(x) any(ismissing(x)), A)) = {'REPLACED'}
In this example, I would like 'text with spaces' to be left alone, and only to replace the actual 'missing' cells. How do I achieve this?
Thanks!

 Réponse acceptée

Niek W
Niek W le 7 Avr 2021
Solved by rinkert: https://stackoverflow.com/questions/66985871/matlab-replace-missing-cell-entries-without-replacing-whitespaces
A(cellfun(@(x) isa(x,'missing'), A)) = {'REPLACED'}

Plus de réponses (1)

for i = 1:numel(A)
if ismissing(A{i})
A{i} = 'REPLACED';
end
end

1 commentaire

Hi Monika, your solution works. However someone on stackexchange was slightly faster, so I've marked that answer as Accepted.
Thanks anyway!

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Import and Analysis dans Centre d'aide et File Exchange

Produits

Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by