Python pandas中DateTime的字符串分析不正确

Python pandas中DateTime的字符串分析不正确,python,pandas,Python,Pandas,我在pandas中有一个数据帧,它有两个字段: UsageStartDate UsageEndDate 5/1/2020 12:00:00 AM 5/1/2020 11:59:59 PM 我正在尝试将它们转换为24小时格式 我正在使用以下工具: df['UsageStartDate'] = pd.to_datetime(df['UsageStartDate'], format='%m/%d/%Y %I:%M:%S %p') df['UsageEndDate'] = pd.to

我在pandas中有一个数据帧,它有两个字段:

UsageStartDate        UsageEndDate

5/1/2020 12:00:00 AM  5/1/2020 11:59:59 PM
我正在尝试将它们转换为24小时格式

我正在使用以下工具:

df['UsageStartDate'] = pd.to_datetime(df['UsageStartDate'], format='%m/%d/%Y %I:%M:%S %p')
df['UsageEndDate'] = pd.to_datetime(df['UsageEndDate'], format='%m/%d/%Y %I:%M:%S %p')
UsageEndDate
字段提供正确的输出:
2020-05-01 23:59:59

然而,
UsageStartDate
给出:
2020-05-01

我还尝试在读取csv文件时解析日期:

df = pd.read_csv('./data/sample.csv', parse_dates=['UsageStartDate', 'UsageEndDate'])
它返回与上面相同的结果


请帮忙。

熊猫将显示不带尾随零的字段,这是一个美观的选择。您的实际时间戳值正确:

df['UsageStartDate'] + pd.Timedelta(seconds=1)

0   2020-05-01 00:00:01
Name: UsageStartDate, dtype: datetime64[ns]
如果希望将完整值作为字符串,可以使用时间戳字符串格式化程序获取它:

df['UsageStartDate'].dt.strftime(“%m/%d/%Y%I:%m:%S%p”)
2020年05月01日凌晨12:00:00
名称:UsageStartDate,数据类型:object#
df['UsageStartDate'].dt.strftime('%m/%d/%Y %I:%M:%S %p')

0    05/01/2020 12:00:00 AM
Name: UsageStartDate, dtype: object # <- Note that this is now object type