Hi all, Let's say I have a table and one of my variable is a mix of numbers and NaNs, like so: [1010, NaN, 1256, NaN, 1345...]. Now, I want to convert the numbers into hours-minute format (HH:MM) and keep the same number of rows so the output looks like this : [10:10, NaN, 12:56, NaN, 13:45 ...]. Any ideas? Thanks again, you guys are great!

 Réponse acceptée

Azzi Abdelmalek
Azzi Abdelmalek le 1 Sep 2016

1 vote

a=[1010, NaN, 1256, NaN, 1345]
idx=isnan(a)
a(idx)=0
out=arrayfun(@(x) datestr(datenum(sprintf('%04d',x),'HHMM') ,'HH:MM') ,a,'un',0)
out(idx)={nan}

Plus de réponses (0)

Catégories

En savoir plus sur Characters and Strings dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by