当我们在处理时间序列数据时,经常需要进行日期和时间的转换,pandas中的to_datetime()方法可以将字符串或Unix时间戳转换为pandas日期时间类型,并进行格式化等操作。本教程将详细讲解to_datetime()方法的使用方法,并提供两个示例进行说明。
前置条件
在开始之前,确保你已经安装了pandas库,可以通过以下代码进行安装:
pip install pandas
to_datetime()方法说明
to_datetime方法可以接受不同的输入类型,包括字符串、整型、浮点型、时间戳,以及数组、列表、Series等,并将其转换为pandas日期时间类型。同时,to_datetime()方法也支持传入多个参数,用于格式化日期时间字符串等。
to_datetime()方法的调用方式如下:
pandas.to_datetime(arg, format=None, errors='raise', utc=None, box=True, infer_datetime_format=False)
参数说明:
- arg:表示需要转换的日期时间数据,可以是字符串、整型、浮点型、时间戳,以及数组、列表、Series等数据类型
- format:表示转换日期时间字符串的格式字符串。当arg为字符串类型时,必须传入该参数进行格式化。
- errors:表示错误处理方式,默认为'raise',抛出异常。也可以选择'coerce',将错误值转换为NaT;或者'ignore',忽略错误值。
- utc:表示是否将转换后的日期时间数据转换为UTC时间,None表示不进行转换。
- box:表示是否将转换后的日期时间数据作为单元素Series返回,默认为True,表示返回Series类型。
- infer_datetime_format:表示是否自动推断日期时间格式,默认为False。
示例说明
示例1:转换字符串为日期时间
我们先看一个简单的示例,将一个字符串转换为pandas日期时间类型。假设我们有如下日期字符串:'2022-01-01 10:30:00',现在我们需要将其转换为pandas日期时间类型,代码如下:
import pandas as pd
date_str = '2022-01-01 10:30:00'
date_time = pd.to_datetime(date_str)
print(date_time)
print(type(date_time))
输出结果为:
2022-01-01 10:30:00
<class 'pandas._libs.tslibs.timestamps.Timestamp'>
我们可以看到,to_datetime()方法将字符串转换为了pandas日期时间类型,返回的是Timestamp类型。
示例2:转换带有格式的日期字符串
有时候,我们的日期时间字符串可能带有指定的格式,例如:“21-10-2021 02:30:10 AM”。此时,我们可以通过传入format参数将其转换为pandas日期时间类型。代码如下所示:
import pandas as pd
date_str = '21-10-2021 02:30:10 AM'
date_time = pd.to_datetime(date_str, format='%d-%m-%Y %I:%M:%S %p')
print(date_time)
print(type(date_time))
输出结果为:
2021-10-21 02:30:10
<class 'pandas._libs.tslibs.timestamps.Timestamp'>
我们可以看到,to_datetime()方法成功将时间字符串转换为pandas日期时间类型,并按照format参数设置的格式进行了转换。
总结
本教程中介绍了pandas库中的to_datetime()方法,可以将不同类型的数据转换为pandas日期时间类型,并进行格式化等操作。我们通过两个示例说明了该方法的使用方式,希望对大家学习pandas库有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:pandas库中to_datetime()方法的使用解析 - Python技术站