如何将dd-mm-yyyy日期格式更改为pandas中的yyyy-dd-mm。我有一个已经采用dd-mm-yyyy格式的日期字段,但是当我尝试时
df[('date')] = pd.to_datetime(df[('date')]).dt.strftime('%Y-%m-%d')
它给出了输出yyyy-dd-mm
我相信这就是你所需要的。
import pandas as pd
df = pd.read_csv("dates.csv")
df
id date
0 1 25/06/2018
1 2 14-11-2005
2 3 03/10/2010
3 4 13-08-2008
4 5 05-05-2005
这里不需要像你试过的那样指定格式。
df['date'] =pd.to_datetime(df['date'])
df
id date
0 1 2018-06-25
1 2 2005-11-14
2 3 2010-03-10
3 4 2008-08-13
4 5 2005-05-05
Pandas datetime
系列数据没有固有的字符串格式。
datetime
值在内部存储为整数。有关更多详细信息,请参阅this answer。字符串表示就是表示。例如,当您使用print
命令时,将使用特定的字符串表示形式,以便以人类可读的方式显示数据。
在大多数情况下,您不应该担心表示。如果需要与默认表示形式不同的格式,即“YYYY-MM-DD”,则可以使用pd.Series.dt.strftime
并指定字符串格式。对于这个Python's strftime
directives是一个有用的资源。
用这个:
import pandas as pd
df['date'] = pd.to_datetime(df['date'],format='%d-%m-%Y').dt.strftime('%Y-%m-%d')#specify input format '%d-%m-%Y' and output format '%Y-%m-%d' or change output as desired i.e. %d/%m/%Y to give dd/mm/yyyy