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

8 次查看(过去 30 天)
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.

采纳的回答

Kevin
Kevin 2016-5-5
>> 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 个评论
William D
William D 2018-2-9
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 2019-2-11
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.

请先登录,再进行评论。

更多回答(1 个)

Azzi Abdelmalek
Azzi Abdelmalek 2016-5-5
编辑:Azzi Abdelmalek 2016-5-5
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,[])'

Community Treasure Hunt

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

Start Hunting!

Translated by