import pandas as pd
dt_bd=pd.to_datetime('2001-12-02 16:20:05')
print(dt_bd)
import pandas as pd
dt_bd=pd.to_datetime('2000-12-23 16:20:05')
print("year : ",dt_bd.year)
print("year : ",dt_bd.month)
print("year : ",dt_bd.day)
print("year : ",dt_bd.hour)
import pandas as pd
dt_bd=pd.to_datetime('2000-12-23 16:20:05')
dt_target=pd.to_datetime('2020-01-01 13:22:34')
print(dt_target-dt_bd)
Output
6947 days 21:02:29
We can get the output in Week, Month, Year, hour etc by using timedelta64() Here are some examples.
import pandas as pd
import numpy as np
from dateutil.relativedelta import relativedelta
dt_bd=pd.to_datetime('2001-11-22 16:20:05')
dt_target=pd.to_datetime('2020-01-01 13:22:34')
dt_diff=dt_target-dt_bd
print(dt_diff)
print(dt_diff/np.timedelta64(1,'W'))
Output , note : First line shows value in days and 2nd line shows value in weeks.
6613 days 21:02:29
944.8395320767196
Similarly we can get the age in Months as on 1st Jan 2020
import pandas as pd
import numpy as np
from dateutil.relativedelta import relativedelta
dt_bd=pd.to_datetime('2001-11-22 16:20:05')
dt_target=pd.to_datetime('2020-01-01 13:22:34')
dt_diff=dt_target-dt_bd
print(dt_diff)
print(dt_diff/np.timedelta64(1,'M'))
6613 days 21:02:29
217.29815312961784
import pandas as pd
dt_now=pd.to_datetime('now')
dt_bd=pd.to_datetime('2001-11-22 16:20:05')
dt_diff=dt_now-dt_bd
print(dt_diff)
Output
6721 days 10:37:40.983745
By using timedelta64() we can create output in different units of date and time(as explained above ).
import pandas as pd
import numpy as np
dt_bd=pd.to_datetime('2001-11-22 16:20:05')
dt_new=dt_bd + np.timedelta64(5,'Y') + np.timedelta64(2,'M') + np.timedelta64(25,'D')
print(dt_new)
Output
2007-02-16 18:24:17
import pandas as pd
dt_now=pd.to_datetime('now')
print(dt_now)
Output in different fomats ( use strftime() )
import pandas as pd
dt_now=pd.to_datetime('now')
print(dt_now)
print(dt_now.strftime('%d-%b-%Y')) #18-Apr-2020
print(dt_now.strftime('%d-%B-%Y')) #18-April-2020
print(dt_now.strftime('%D %X')) # 04/18/20 20:59:42
print(dt_now.strftime('%c')) # Sat Apr 18 20:05:03 2020
import pandas as pd
dt_now=pd.to_datetime('now')
dt_start=dt_now - pd.to_timedelta(10,unit='days')
my_data=pd.date_range(start=dt_start, periods=10,freq='3D6H')
print(my_data)
print(my_data.strftime('%H:%M:%S %f'))
import pandas as pd
dt_now=pd.to_datetime('now')
dt_start=pd.to_datetime('2001-01-22 16:20:05')
my_data=pd.date_range(start=dt_start, periods=10,freq='25D')
#print(my_data)
print(my_data.day_name())
Output
Index(['Monday', 'Friday', 'Tuesday', 'Saturday', 'Wednesday', 'Sunday',
'Thursday', 'Monday', 'Friday', 'Tuesday'],
dtype='object')
import pandas as pd
dt_now=pd.to_datetime('now')
dt_start=dt_now - pd.to_timedelta(10,unit='days')
my_data=pd.period_range(start=dt_start, periods=10,freq='B')
print(my_data.strftime('%x %A'))
Output ( uses strftime for formats and note that %x returns date and %A returns Name of the Weekday in full )
Index(['04/08/20 Wednesday', '04/09/20 Thursday', '04/10/20 Friday',
'04/13/20 Monday', '04/14/20 Tuesday', '04/15/20 Wednesday',
'04/16/20 Thursday', '04/17/20 Friday', '04/20/20 Monday',
'04/21/20 Tuesday'],
dtype='object')
Pandas date & time Basic Exercise using datetime 3-1
Author
🎥 Join me live on YouTubePassionate about coding and teaching, I publish practical tutorials on PHP, Python, JavaScript, SQL, and web development. My goal is to make learning simple, engaging, and project‑oriented with real examples and source code.