首页 > 后端开发 > Python教程 > 如何在 Pandas 中将字符串日期转换为日期时间对象并按日期范围进行过滤?

如何在 Pandas 中将字符串日期转换为日期时间对象并按日期范围进行过滤?

Linda Hamilton
发布: 2024-12-01 05:27:14
原创
264 人浏览过

How to Convert String Dates to Datetime Objects and Filter by Date Range in Pandas?

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

问题:

给定一个 Pandas 数据框包含字符串日期值的列,如何将这些值转换为日期时间 格式?此外,如何根据指定的日期范围过滤行?

解决方案:

转换为日期时间格式:

要将 Pandas 中的字符串转换为日期时间格式,请使用 to_datetime 函数。一般来说,解析器可以自动确定输入字符串的格式,从而无需显式格式规范。

import pandas as pd

df = pd.DataFrame({'I_DATE': ['28-03-2012 2:15:00 PM', '28-03-2012 2:17:28 PM', '28-03-2012 2:50:50 PM']})

df['I_DATE'] = pd.to_datetime(df['I_DATE'])
登录后复制

此代码将 I_DATE 列转换为日期时间格式。输出如下所示:

   I_DATE
0 2012-03-28 14:15:00
1 2012-03-28 14:17:28
2 2012-03-28 14:50:50
登录后复制

访问日期组件:

转换后,您可以访问各个日期组件,例如日期、时间或日期,使用 dt 访问器。例如:

# Get the date only
df['I_DATE'].dt.date

# Get the time only
df['I_DATE'].dt.time
登录后复制

根据日期范围筛选行:

要根据日期范围筛选行,请使用以下语法:

df[(df['date'] > 'start_date') & (df['date'] < 'end_date')]
登录后复制

例如,过滤日期在 '2015-02-04' 和'2015-02-10':

df[(df['date'] > '2015-02-04') & (df['date'] < '2015-02-10')]
登录后复制

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

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板