I have an array of date time values. How do I separate Date and time and enter it in separate columns in excel?

8 vues (au cours des 30 derniers jours)
My Output is a 17 x 1 cell array of date series eg:
'19-Apr-2016 11:29:31'
'27-Apr-2016 00:05:59'
'31-Mar-2016 18:35:46'....etc
I would like to separate the date and time formats and display date alone in a column in excel and time alone in another column in excel spreadsheet. Please help me with the same.

Réponse acceptée

Kevin
Kevin le 5 Mai 2016
>> d = datetime({'19-Apr-2016 11:29:31'; '27-Apr-2016 00:05:59'; '31-Mar-2016 18:35:46'})
d =
19-Apr-2016 11:29:31
27-Apr-2016 00:05:59
31-Mar-2016 18:35:46
>> d.Format = 'dd-MMM-yyyy';
>> column1 = cellstr(d) % Cell array of strings.
column1 =
'19-Apr-2016'
'27-Apr-2016'
'31-Mar-2016'
>> d.Format = 'hh:mm:ss';
>> column2 = cellstr(d) % Cell array of strings.
column2 =
'11:29:31'
'00:05:59'
'18:35:46'
  3 commentaires
William D
William D le 9 Fév 2018
I am not sure if it is due to this being posted for an older version of Matlab; however, on Matlab 2017b, in order obtain the time output in a 24h format the following syntax must be used:
>> d.Format = 'HH:mm:ss';
Reference the following link for more variations:
https://www.mathworks.com/help/matlab/ref/datetime.html
properties -> format - display format -> All Date and Time formats
Steph
Steph le 11 Fév 2019
Kevin's code did not produce the desired results in 2017b for 24 hour format. William's correction worked for 24 hr format in 2017b.

Connectez-vous pour commenter.

Plus de réponses (1)

Azzi Abdelmalek
Azzi Abdelmalek le 5 Mai 2016
Modifié(e) : Azzi Abdelmalek le 5 Mai 2016
v={'19-Apr-2016 11:29:31'
'27-Apr-2016 00:05:59'
'31-Mar-2016 18:35:46'}
w=regexp(v,'\s+','split')
out=reshape([w{:}],2,[])'

Catégories

En savoir plus sur Dates and Time dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by