pandas.to_datetime()
function in the Pandas library in Python used to convert arguments to DateTime. It’s quite handy for converting strings, timestamps, or mixed-type data into datetime objects. In this article, I will explain the pandas.to_datetime()
function, its syntax, parameters, and usage of how to to_datetime()
is a versatile function used extensively in data analysis and manipulation tasks, especially when dealing with time-series data.
Key Points –
- Pandas.to_datetime() converts input into datetime objects.
- The function can infer datetime format or be explicitly provided with format specifications.
- It supports handling of missing or erroneous data through optional parameters like errors and infer_datetime_format.
- Pandas.to_datetime() is a versatile tool for data preprocessing, especially in time-series analysis and data cleaning tasks.
Syntax of Pandas.to_datetime()
Following is the syntax of the Pandas.to_datetime()
method.
# Pandas.to_datetime() syntax
Pandas.to_datetime(arg, errors='raise', dayfirst=False, yearfirst=False,
utc=None, format=None, exact=True, unit=None,
infer_datetime_format=False, origin='unix', cache=True)
Parameters of the Pandas.to_datetime()
Following are the parameters of the Pandas.to_datetime() function.
arg
– An integer, string, float, list, or DataFrame/dict_like object to convert into a Datetime object.errors
– Take valuesraise
,ignore
orcoerce
. if ‘raise’ is used, raise a KeyError when a dict-like mapper, index, or column contains labels that are not present in the Index being transformed. Default set toignore
.dayfirst
– default set False, Boolean value places day first if True.yearfirst
– Boolean value places year first if True, the default set False.utc
– Boolean value, Returns the time in UTC DatetimeIndex if True.format
– String input to tell the position of the day, month, and year. default set None.exact
– Boolean value, If True, requires an exact format match. – If False, allow the format to match anywhere in the target string.infer_datetime_formatbool
– If True and no format is given, attempt to infer the format of the datetime strings based on the first non-NaN element. the default set False.
Now, let’s create a DataFrame with a few rows and columns, execute the above examples and validate results. Our DataFrame contains column names Courses
, Fee
, Duration
, Discount
and Inserted
.
# Pandas.to_datetime() Syntax & Examples
import pandas as pd
from datetime import datetime, timedelta
from Pandas import DataFrame
df = DataFrame.from_dict(
{'Courses':["Spark","Hadoop","Pandas"],
'Fee' :[20000,25000,30000],
'Duration':['30days','40days','35days'],
'Discount':[1000,2500,1500],
'Inserted': ["11/22/2021, 10:39:24","11/22/2021, 10:39:24","11/22/2021, 10:39:24"]},
orient='index',
columns=['A','B','C']).T
print(df)
Yields below output. Note that Inserted
column on the DataFrame has datetime in the format of "%m/%d/%Y, %H:%M:%S"
# Output:
Courses Fee Duration Discount Inserted
A Spark 20000 30days 1000 11/22/2021, 10:39:24
B Hadoop 25000 40days 2500 11/22/2021, 10:39:24
C Pandas 30000 35days 1500 11/22/2021, 10:39:24
Convert a Pandas String to DateTime
Converting a Pandas string to DateTime is a common operation when dealing with time-series data. You can use the pd.to_datetime()
function
import pandas as pd
# Example string
date_string = '2024-05-07 10:30:00'
# Convert string to datetime
date_time = pd.to_datetime(date_string)
print(date_time)
# Output:
# 2024-05-07 10:30:00
In the above example, the date_string
variable contains a string representing a date and time. The pd.to_datetime()
function converts this string into a Pandas datetime object date_time
. You can now use date_time
for various datetime operations and analyses in Pandas.
Related Articles
- How to Format Pandas Datetime?
- Set Order of Columns in Pandas DataFrame
- Pandas Groupby Aggregate Explained
- Pandas GroupBy Multiple Columns Explained
- Pandas Groupby Sort within Groups