如何将 Pandas 中的日期和时间列合并为单个日期时间列?

DDD
发布: 2024-11-21 16:20:16
原创
387 人浏览过

How can you combine date and time columns into a single datetime column in Pandas?

使用 Pandas 组合日期和时间列

在 pandas 中,组合日期和时间列可能是数据分析和操作的必要任务。这可以使用多种方法来实现,其中之一是通过 pd.to_datetime() 函数。

考虑一个具有单独“日期”和“时间”列的 DataFrame:

data = {'Date': ['01-06-2013', '02-06-2013', '02-06-2013', '02-06-2013', '02-06-2013', '03-06-2013', '03-06-2013', '03-06-2013', '03-06-2013', '04-06-2013'],
        'Time': ['23:00:00', '01:00:00', '21:00:00', '22:00:00', '23:00:00', '01:00:00', '21:00:00', '22:00:00', '23:00:00', '01:00:00']}
df = pd.DataFrame(data)
登录后复制

要合并这些列,您可以简单地使用 ' ' 运算符将它们与空格连接起来分隔符:

df['DateTime'] = df['Date'] + ' ' + df['Time']
登录后复制
df['DateTime']

0    01-06-2013 23:00:00
1    02-06-2013 01:00:00
2    02-06-2013 21:00:00
3    02-06-2013 22:00:00
4    02-06-2013 23:00:00
5    03-06-2013 01:00:00
6    03-06-2013 21:00:00
7    03-06-2013 22:00:00
8    03-06-2013 23:00:00
9    04-06-2013 01:00:00
Name: DateTime, dtype: object
登录后复制

现在,您可以使用 pd.to_datetime() 将组合的“DateTime”列转换为日期时间格式:

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

0   2013-01-06 23:00:00
1   2013-02-06 01:00:00
2   2013-02-06 21:00:00
3   2013-02-06 22:00:00
4   2013-02-06 23:00:00
5   2013-03-06 01:00:00
6   2013-03-06 21:00:00
7   2013-03-06 22:00:00
8   2013-03-06 23:00:00
9   2013-04-06 01:00:00
Name: DateTime, dtype: datetime64[ns]
登录后复制

或者,您可以使用格式指定“DateTime”字符串的格式参数:

df['DateTime'] = pd.to_datetime(df['DateTime'], format='%m-%d-%Y %H:%M:%S')
登录后复制

请记住处理由于无效的日期或时间格式而可能出现的任何转换错误。

以上是如何将 Pandas 中的日期和时间列合并为单个日期时间列?的详细内容。更多信息请关注PHP中文网其他相关文章!

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