i have a cell n x 2 table array. The first column containd dateas in the format of
'yyyy-MM-dd''T''HH:mm:ss.SSSSSSSSS''Z'''
I wish to change this to the following format
20130501000000, = 'YYYMMDD000000', which is '%Y%m%d%H%M%S'
I will then want to change the table array to a text file
I was hoping to use something like this to change the format. Any guidance would help.
New_datetime_new = datetime(EUR_USD.Date,'inputformat','yyyy-MM-dd''T''HH:mm:ss.SSSSSSSSS''Z''');

댓글 수: 3

Stephen23
Stephen23 2019년 5월 1일
@ Charles: please upload the cell array in a .mat file by clicking the paperclip button.
Charles
Charles 2019년 5월 1일
See .matf ile attached. i wish to change the date format to that in the .txt file. I wish to retain the close price column and in fact make two colums of closing price and rhenc onvert this to the .txt file
dpb
dpb 2019년 5월 1일
What is the time zone???
You don't separate the Z timezone code as a literal as do the 'T'.

댓글을 달려면 로그인하십시오.

 채택된 답변

dpb
dpb 2019년 5월 1일
편집: dpb 2019년 5월 1일

1 개 추천

>> tst=GBP_USD.Date(1:10); % just a sample set to play with
>> datetime(tst,'InputFormat','yyyy-MM-dd''T''HH:mm:ss.SSSSSSSSSZ', ...
'TimeZone','Europe/London','Format','yyyyMMddHHmmss')
ans =
10×1 datetime array
20190501095950
20190501095955
20190501100000
20190501100005
20190501100010
20190501100015
20190501100020
20190501100025
20190501100030
20190501100035
>>

댓글 수: 6

dpb
dpb 2019년 5월 1일
[Charles Answer moved to Comment..dpb]
Looks good. Will try this. I feel the time is correct as written. I will check. Thank you. Presumably i can append thie to the prices column and save as q text file? I will try. Thanks
dpb
dpb 2019년 5월 1일
Depends on just what you want in the text file and in what format...if you just need for export/import and not fancy formatting for visual presentation, then putting into a table and writetable is probably the simplest thing to do...but it produces a "barebones" csv text file, not particularly pretty.
Peter Perkins
Peter Perkins 2019년 5월 3일
This
'TimeZone','Europe/London'
might be problematic -- London time is Zulu only half the year (and not currently). If all the timestamps have a trailing Z, there are two options:
1) '...SSSSSSSSSZ' in dpb's answer is the "correct" way to read them, and since you are reading a timezone, datetime requires that you specify a timezone for the result. It might be 'Europe/London', but it might also be 'UTC'.
2) Treat the Z as a literal, in both input and output, in other words, create an "unzoned" datetime array. But all of the timestamps better have a Z.
dpb
dpb 2019년 5월 3일
2) Hmmm, Peter, I thought I had tried that and datetime barfed...have to go back and see if can find that in command history to see if I had a syntax error maybe...
1) I just chose London for lack of anything other info...
Charles
Charles 2019년 5월 4일
Hi Guys...yes the time i in fact use is UTC, but adjusted for UK time I believe.
Peter Perkins
Peter Perkins 2019년 5월 9일
Then it seems like dpb had the right answer. Reputation heading for 10K!

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Text Data Preparation에 대해 자세히 알아보기

제품

릴리스

R2018a

태그

질문:

2019년 5월 1일

댓글:

2019년 5월 9일

Community Treasure Hunt

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

Start Hunting!

Translated by