how to add zeros in fronts of any number in matrix
    2 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
    devendra
 el 22 de Mzo. de 2015
  
    
    
    
    
    Respondida: Jan
      
      
 el 22 de Mzo. de 2015
            dten = datenum([1998 1 1 ;2002 12 31]);
[M] = datevec(dten(1):dten(2));
years = M(:,1);
months = M(:,2);
days = M(:,3);
i want to add zeros in front of 1, 2, 3, 4, 5, 6, 7, 8, 9 like this 01, 02, 03, 04, 05, 06, 07, 08, 09 in months and days matrix. how will do this. please help me. thank you in advance.
0 comentarios
Respuesta aceptada
  Konstantinos Sofos
      
 el 22 de Mzo. de 2015
        
      Editada: Konstantinos Sofos
      
 el 22 de Mzo. de 2015
  
      Asking for this probably you do not want anymore your years, months, days vectors to be numbers but chars. Because you know from basic maths that '01' doesn't exist as type of number.
myCellMonth =  cellfun(@(x) num2str(x),num2cell(months),'UniformOutput', false);
idx = cellfun(@(x) numel(x),myCellMonth);
idx = idx==1; % we want to add a leading '0' only in front of 1,2,3,...9
myCellMonth(idx) = cellfun(@(x) strcat('0', x),myCellMonth(idx),'UniformOutput', false)
In the same logic you could reform days and years
Regards
5 comentarios
  Konstantinos Sofos
      
 el 22 de Mzo. de 2015
				for the ' ' (inverted commas) use {} instead of () to read the context of a char cell array as i showed above. Hope that this helps.
Más respuestas (1)
  Jan
      
      
 el 22 de Mzo. de 2015
        sprintf and also num2str can use the '%02d' format:
myCellMonth =  cellfun(@(x) num2str(x, '%02d'), num2cell(months),'UniformOutput', false);
This inserts a leading zero, when the number has less than 2 digits. Instead of preparing cell strings, you can use sprintf directly:
for i = 1:numel(M(:,1))
   filename = sprintf('3B42_daily.%04d.%02d.%02d.7.SUB.nc', year(i), month(i), day(i));
   ...
end
0 comentarios
Ver también
Categorías
				Más información sobre Time Series Objects 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!


