使用 pandas.to_datetime() 推断日期时如何检查月序是否不明确?



当使用pandas.to_datetime()时,它似乎更喜欢先解析带有月份的字符串日期。

似乎它会忽略区域设置来执行此操作。它似乎也会忽略其他非歧义日期的格式。

>>> import pandas
>>> import locale
>>> locale.getlocale()
('en_GB', 'UTF-8')
>>> df = pd.DataFrame(['03-04-2019', '14-04-2019'])
>>> pd.to_datetime(df[0]).dt.month
0    3
1    4
Name: 0, dtype: int64

在这里,您可以看到第一个日期被解析为第一个数字是月份。即使区域设置是en_GB,其中 day永远不会在中间,并且另一个日期清楚地显示日期是前两位数字,它也会这样做。

有没有办法让熊猫警告是否有模棱两可的日期,只有当其余日期没有体现正确的格式时?另外,有没有办法让熊猫在系列中的其他日期清楚地展示月/日顺序时使用该格式?

旁白: 这对我来说似乎很危险。这是不直观的,熊猫对明显的潜在陷阱保持沉默。

您可以选择格式。 当你输入pd.to_datetime时,你可以设置参数'format' =>pd.to_datetime(format="%d/%m/%Y")

问候

最新更新