#1 Data Analytics Program in India
₹2,499₹1,499Enroll Now
5 min read min read

DateTime Operations

Learn to add, subtract, and compare dates

DateTime Operations

Add or Subtract Days

code.py
import pandas as pd

df = pd.DataFrame({
    'Order_Date': pd.to_datetime(['2024-01-15', '2024-02-20'])
})

# Add 7 days
df['Delivery_Date'] = df['Order_Date'] + pd.Timedelta(days=7)

print(df)

Output:

Order_Date Delivery_Date 0 2024-01-15 2024-01-22 1 2024-02-20 2024-02-27

Add Weeks, Months, Years

code.py
# Add different time units
df['Plus_1_Week'] = df['Order_Date'] + pd.Timedelta(weeks=1)
df['Plus_30_Days'] = df['Order_Date'] + pd.Timedelta(days=30)

# For months, use DateOffset
df['Plus_1_Month'] = df['Order_Date'] + pd.DateOffset(months=1)
df['Plus_1_Year'] = df['Order_Date'] + pd.DateOffset(years=1)

Find Difference Between Dates

code.py
df = pd.DataFrame({
    'Start': pd.to_datetime(['2024-01-01', '2024-02-15']),
    'End': pd.to_datetime(['2024-01-10', '2024-03-01'])
})

# Difference in days
df['Days_Between'] = (df['End'] - df['Start']).dt.days

print(df)

Output:

Start End Days_Between 0 2024-01-01 2024-01-10 9 1 2024-02-15 2024-03-01 15

Calculate Age from Birthdate

code.py
df = pd.DataFrame({
    'Name': ['John', 'Sarah'],
    'Birthday': pd.to_datetime(['1990-05-15', '1985-08-20'])
})

today = pd.Timestamp.today()
df['Age'] = ((today - df['Birthday']).dt.days / 365).astype(int)

print(df)

Filter by Date

code.py
df = pd.DataFrame({
    'Date': pd.to_datetime(['2024-01-15', '2024-02-20', '2024-03-10']),
    'Sales': [100, 150, 200]
})

# Sales after February 1st
recent = df[df['Date'] > '2024-02-01']
print(recent)

Output:

Date Sales 1 2024-02-20 150 2 2024-03-10 200

Filter Date Range

code.py
# Sales between Jan 10 and Feb 25
start = '2024-01-10'
end = '2024-02-25'

filtered = df[(df['Date'] >= start) & (df['Date'] <= end)]
print(filtered)

Get Today's Date

code.py
# Current date and time
now = pd.Timestamp.now()
print(now)

# Just today's date
today = pd.Timestamp.today().date()
print(today)

Compare Dates

code.py
df = pd.DataFrame({
    'Due_Date': pd.to_datetime(['2024-01-15', '2024-12-31']),
    'Task': ['Past', 'Future']
})

today = pd.Timestamp.today()
df['Is_Overdue'] = df['Due_Date'] < today

print(df)

Quick Reference

OperationCode
Add days+ pd.Timedelta(days=7)
Add weeks+ pd.Timedelta(weeks=2)
Add months+ pd.DateOffset(months=1)
Add years+ pd.DateOffset(years=1)
Difference(date1 - date2).dt.days
Todaypd.Timestamp.today()

Key Points

  • pd.Timedelta() for adding days/weeks/hours
  • pd.DateOffset() for adding months/years
  • Subtract dates to get difference
  • .dt.days converts to number of days
  • Compare dates with <, >, ==
  • Filter dates like numbers

What's Next?

Learn about time series - data that changes over time with regular intervals.

SkillsetMaster - AI, Web Development & Data Analytics Courses