Pandas pandas.to_datetime(),解析不正确

时间:2015-12-17 22:38:28

标签: python datetime pandas

我有一个Pandas Dataframe df,其中包含年份,月份和日期,以及一年中的所有日期。以下是12月的样本:

Year    Month    Day
1995     12      14
1995     12      15
1995     12      15
1995     12      16
1995     12      17

我想用这些数据创建一个时间戳。所以,我试试这个:

df['Datetime'] = pd.to_datetime(df.Year*10000 + df.Month*100 + df.Day, format="%Y%M%d")

不幸的是,所有月份都列为1月份。输出如下:

1995-01-14 00:01:00
1995-01-15 00:01:00
1995-01-15 00:01:00
1995-01-16 00:01:00
1995-01-17 00:01:00

上面的错误是什么?

1 个答案:

答案 0 :(得分:1)

您的格式字符串错误:

"%Y%M%d"

%M表示分钟,这就是为什么您的月份默认为1并且您的日期时间有几分钟。

使用:

"%Y%m%d"

有关正确的格式说明符,请参阅docs