Sunday, November 17, 2024
Google search engine
HomeLanguagesHow to Convert Datetime to Date in Pandas ?

How to Convert Datetime to Date in Pandas ?

DateTime is a collection of dates and times in the format of “yyyy-mm-dd HH:MM:SS” where yyyy-mm-dd is referred to as the date and HH:MM:SS is referred to as Time.

  • yyyy stands for year
  • mm stands for  month
  • dd stands for date
  • HH stands for hours
  • MM stands for minutes
  • SS stands for seconds.

In this article, we are going to discuss converting DateTime to date in pandas. For that, we will extract the only date from DateTime using Pandas Python module. 

Syntax:

pd.DataFrame(data)

where data is the input DateTime data.

Example: Python program to create the pandas dataframe with 5 datetime values and display

Python3




# importing pandas module
import pandas as pd
 
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11',
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
 
# display
print(df)


Output:

DateTime

0  2021-01-15 20:02:11

1  1989-05-24 20:34:11

2  2020-01-18 14:43:24

3  2021-01-15 20:02:10

4  1999-04-04 20:34:11

Method 1 : Using date function

By using date method along with pandas we can get date.

Syntax:

dataframe[‘Date’] = pd.to_datetime(dataframe[‘DateTime’]).dt.date

where,

  • dataframe is the input dataframe
  • to_datetime is the function used to convert datetime string to datetime
  • DateTime is the datetime column in the dataframe
  • dt.date is used to convert datetime to date
  • Date column is the new column to get the date from the datetime

Example: Python program to convert datetime to date using pandas through date function

Python3




# importing pandas module
import pandas as pd
 
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11',
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
 
print("Original data")
print(df)
 
# convert datetime column to just date
df['Date'] = pd.to_datetime(df['DateTime']).dt.date
 
# display
print("Only date")
print(df)


Output:

we can also get the datatypes by using dtypes

Example: Python program to get the datatypes

Python3




# importing pandas module
import pandas as pd
 
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11',
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
 
print("---------Original data------------")
print(df.dtypes)
 
# convert datetime column to just date
df['Date'] = pd.to_datetime(df['DateTime']).dt.date
 
# display
print("--------Only date---------")
print(df.dtypes)


Output:

Method 2 : using normalize() method

we can get by also using normalize() method, this method is used to normalize the data by extracting the date from DateTime. We are using normalize() method to get the data through pandas

Syntax:

dataframe[‘Date’] = pd.to_datetime(dataframe[‘DateTime’]).dt.normalize()

where,

  • dataframe is the input dataframe
  • to_datetime is the function used to convert datetime string to datetime
  • DateTime is the datetime column in the dataframe
  • dt.normalize() is the function which  is used to convert datetime to date
  • Date column is the new column to get the date from the datetime

Example: Python code to convert datetime to date using pandas normalize() method.

Python3




# importing pandas module
import pandas as pd
 
# create pandas DataFrame with one column with five
# datetime values through a dictionary
df = pd.DataFrame({'DateTime': ['2021-01-15 20:02:11',
                                '1989-05-24 20:34:11',
                                '2020-01-18 14:43:24',
                                '2021-01-15 20:02:10',
                                '1999-04-04 20:34:11']})
 
print("Original data")
print(df)
 
# convert datetime column to just date using normalize()
# method
df['Date'] = pd.to_datetime(df['DateTime']).dt.normalize()
 
# display
print("date extracted")
print(df)


Output:

RELATED ARTICLES

Most Popular

Recent Comments