我有一个从下面的代码中得到的数据框,但我无法将 date 索引转换为 dd/mm/yyyy
df= pandas.read_html(base_url, header=0, index_col='Date', parse_dates=True)[0]
df.index = pandas.to_datetime(df.index, dayfirst=True)
这是结果
Col1 Col2
Date
2017-02-10 val1 val1
2017-02-09 val2 val2
2017-02-08 val3 val3
2017-02-07 val4 val4
我已经厌倦了我在 stackoverflow 上搜索的其他几个不同的变体,但我无法找到有效的组合。
它仍然打印出 date 作为 yyyy-mm-dd
请您参考如下方法:
如果需要 DatetimeIndex 那么问题来了,因为 yyyy-mm-dd 是 pandas< 中 .dates 的默认显示格式
如果需要string索引DatetimeIndex.strftime :
df.index = df.index.strftime('%d/%m/%Y')
print (df)
Col1 Col2
10/02/2017 val1 val1
09/02/2017 val2 val2
08/02/2017 val3 val3
07/02/2017 val4 val4
print (type(df.index[0]))
<class 'str'>
不幸的是,这不起作用 - docs :
with pd.option_context('display.date_dayfirst', True):
print (df)
Col1 Col2
Date
2017-02-10 val1 val1
2017-02-09 val2 val2
2017-02-08 val3 val3
2017-02-07 val4 val4
