[英]Python - Pandas, issue with datetime format
我有一个包含出发和到达时间的两列数据框(请参见下面的示例)。 为了对这些时间进行操作,我想将字符串转换为日期时间格式,仅保留小时/分钟/秒信息。
输入数据示例 - 文件名 = 表
departure_time,arrival_time
07:00:00,07:30:00
07:00:00,07:15:00
07:05:00,07:22:00
07:10:00,07:45:00
07:15:00,07:50:00
07:10:00,07:26:00
07:40:00,08:10:00
我运行此代码以导入表文件,然后将类型转换为日期时间格式:
import pandas as pd
from datetime import datetime
df= pd.read_excel("table.xlsx")
df['arrival_time']= pd.to_datetime(df['arrival_time'], format= '%H:%M:%S')
但得到这个错误:
ValueError: time data ' 07:30:00' does not match format '%H:%M:%S' (match)
我犯了什么错误?
似乎是导入问题' 07:30:00'
,前面有一个空格。 如果它是您要导入的 CSV,则可以使用skipinitialspace=True
。
如果我导入您的 CSV 文件并使用您的代码,则它可以正常工作:
CSV:
departure_time,arrival_time
07:00:00,07:30:00
07:00:00,07:15:00
07:05:00,07:22:00
07:10:00,07:45:00
07:15:00,07:50:00
07:10:00,07:26:00
07:40:00,08:10:00
df = pd.read_csv('test.csv', skipinitialspace=True)
df['arrival_time']= pd.to_datetime(df['arrival_time'], format='%H:%M:%S').dt.time
print(df)
departure_time arrival_time
0 07:00:00 07:30:00
1 07:00:00 07:15:00
2 07:05:00 07:22:00
3 07:10:00 07:45:00
4 07:15:00 07:50:00
5 07:10:00 07:26:00
6 07:40:00 08:10:00
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.