首页  >  文章  >  后端开发  >  Pandas 如何高效地将字符串日期转换为 DateTime 对象并按日期范围过滤?

Pandas 如何高效地将字符串日期转换为 DateTime 对象并按日期范围过滤?

Barbara Streisand
Barbara Streisand原创
2024-11-26 12:21:09631浏览

How Can Pandas Efficiently Convert String Dates to DateTime Objects and Filter by Date Range?

在 Pandas 中将字符串格式转换为日期时间格式

Pandas 提供了一种将表示日期和时间的字符串值转换为日期时间对象的便捷方法。 pd.to_datetime() 函数可以处理各种输入字符串格式,根据值的内容自动检测正确的格式。

考虑以下列表示日期的字符串值:

I_DATE
28-03-2012 2:15:00 PM
28-03-2012 2:17:28 PM
28-03-2012 2:50:50 PM

要将 I_DATE 转换为日期时间格式,只需使用 pd.to_datetime(df['I_DATE']) 即可。由于格式很简单,pandas 会自动识别它。

In [51]:
pd.to_datetime(df['I_DATE'])

Out[51]:
0    2012-03-28 14:15:00
1    2012-03-28 14:17:28
2    2012-03-28 14:50:50
Name: I_DATE, dtype: datetime64[ns]

您还可以使用 dt 访问器访问日期时间对象的特定组件:

In [54]:
df['I_DATE'].dt.date

Out[54]:
0    2012-03-28
1    2012-03-28
2    2012-03-28
dtype: object

In [56]:    
df['I_DATE'].dt.time

Out[56]:
0    14:15:00
1    14:17:28
2    14:50:50
dtype: object

过滤数据基于日期范围

数据采用日期时间格式后,您可以轻松根据日期进行过滤范围。例如,要过滤 df DataFrame 中 I_DATE 落在特定范围内的行,您可以使用:

df[(df['I_DATE'] > '2015-02-04') & (df['I_DATE'] < '2015-02-10')]

Out[59]:
         date
35 2015-02-05
36 2015-02-06
37 2015-02-07
38 2015-02-08
39 2015-02-09

以上是Pandas 如何高效地将字符串日期转换为 DateTime 对象并按日期范围过滤?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn