📅  最后修改于: 2023-12-03 15:33:25.986000             🧑  作者: Mango
在Python中,我们经常需要处理日期时间数据。当我们获取到日期时间数据时,通常是以字符串的形式表示的。然而在处理数据的过程中,我们往往需要进行日期时间的计算、分析等操作,因此需要将字符串类型的日期时间数据转换为可以操作的Python日期时间类型。pandas
库提供了一个方便的函数pd.to_datetime()
,可以很方便地将字符串类型的日期时间数据转换成日期时间类型。
在使用pd.to_datetime()
函数之前,我们需要先安装pandas
库。在终端中输入以下命令:
pip install pandas
使用pd.to_datetime()
函数进行日期时间转换非常简单。我们只需要将需要转换的字符串类型的日期时间数据传入函数即可。
import pandas as pd
# 将字符串类型的日期时间转换为日期时间类型
date_str = '2021-11-11 11:11:11'
date_time = pd.to_datetime(date_str)
print(date_time)
输出结果如下:
2021-11-11 11:11:11
有时候我们获取到的日期时间数据的格式并不是统一的,例如有些日期时间数据的格式是'2021/11/11 11:11:11'
,而有些是'11/11/2021 11:11:11'
。这时我们需要在pd.to_datetime()
函数中传入format
参数,指定日期时间数据的格式。
import pandas as pd
# 指定日期时间数据的格式
date_str1 = '2021/11/11 11:11:11'
date_time1 = pd.to_datetime(date_str1, format='%Y/%m/%d %H:%M:%S')
date_str2 = '11/11/2021 11:11:11'
date_time2 = pd.to_datetime(date_str2, format='%m/%d/%Y %H:%M:%S')
print(date_time1)
print(date_time2)
输出结果如下:
2021-11-11 11:11:11
2021-11-11 11:11:11
有时候我们获取到的日期时间数据可能存在缺失值,例如有些数据中的日期时间字段可能为空。pd.to_datetime()
函数可以很好地处理这种情况,它会将缺失值转换为Python中的NaT
值。
import pandas as pd
import numpy as np
# 处理缺失值
date_str1 = '2021/11/11'
date_time1 = pd.to_datetime(date_str1, format='%Y/%m/%d')
date_str2 = np.NaN
date_time2 = pd.to_datetime(date_str2)
print(date_time1)
print(date_time2)
输出结果如下:
2021-11-11 00:00:00
NaT
pd.to_datetime()
函数是一个非常方便实用的日期时间转换函数。无论你从哪里获取的日期时间数据,只要是字符串类型的,都可以很方便地使用该函数进行转换。同时,它的可扩展性也非常好,可以轻松地处理不同格式的日期时间数据,以及处理缺失值。