Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在使用pandas.to_datetime()推断日期时检查月顺序是否不明确?_Python_Pandas_Datetime - Fatal编程技术网

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

Python 如何在使用pandas.to_datetime()推断日期时检查月顺序是否不明确?,python,pandas,datetime,Python,Pandas,Datetime,使用pandas.to_datetime()时,它似乎更喜欢用月份第一个来解析字符串日期 它似乎会忽略区域设置来执行此操作。它似乎也会忽略其他非模糊日期的格式 >>> import pandas >>> import locale >>> locale.getlocale() ('en_GB', 'UTF-8') >>> df = pd.DataFrame(['03-04-2019', '14-04-2019']) >

使用
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
在这里,您可以看到第一个日期被解析为第一个数字是月份。它会做到这一点,即使该地区是EngGB,其中一天从来没有在中间,而另一个日期清楚地显示一天是前两个数字。 如果有不明确的日期,有没有办法让熊猫发出警告,只有在其他日期没有正确格式的情况下?另外,当系列中的其他日期清楚地显示月/日顺序时,是否有办法让熊猫使用该格式

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

您可以选择格式。 将pd.to_datetime放入时,可以将参数'format'=>
pd.to_datetime(format=“%d/%m/%Y”)


关于,

您可以明确指定格式,或者只需将
dayfirst=True
传递给pd.to\u datetime.
pd.to\u dataframe()
pd.to\u date()
?对不起,是
pd.to\u datetime