MATLAB Answers

# Convert Python time to Matlab datum

10 views (last 30 days)
Mark Davidson on 15 Oct 2021
Commented: Mark Davidson on 15 Oct 2021
How do I convert Python timestamp to a Matlab datenum? I am sure this is a common issue, but I could not find a Matlab function to do this easily.
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Accepted Answer

Dave B on 15 Oct 2021
Python has several ways it represents time. A common one is so called unix timestamps, which are the number of seconds since 1970:
secssince1970 = 1634287957.292;
datetime(1970,1,1) + seconds(secssince1970)
ans = datetime
15-Oct-2021 08:52:37
##### 7 CommentsShowHide 6 older comments
Mark Davidson on 15 Oct 2021
This might be a useful Matlab fuction...
function [dnum,date_time]=python2matlabTime(timestamp)
date_time = datetime(1970,1,1) + seconds(timestamp);
dnum=datenum(date_time);
return

Sign in to comment.

### More Answers (1)

Steven Lord on 15 Oct 2021
Don't convert to a datenum. Depending on how the Python timestamp represents the date and time, I suspect some of the values for the ConvertFrom parameter in the datetime function will be of use, something like:
x = 20211015;
dt = datetime(x, 'ConvertFrom', 'yyyymmdd')
dt = datetime
15-Oct-2021
##### 1 CommentShowHide None
Mark Davidson on 15 Oct 2021
The time-stamp is in a number format a bit like the matlab datenumber but not the same. I think that it is the same as the unix timestamp, but I'm not sure.

Sign in to comment.

R2020b

### Community Treasure Hunt

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

Start Hunting!

Translated by