Python 熊猫:更改数据帧日期索引格式
要将数据帧的日期索引从默认样式更改为“%m/%d/%Y”格式Python 熊猫:更改数据帧日期索引格式,python,pandas,dataframe,Python,Pandas,Dataframe,要将数据帧的日期索引从默认样式更改为“%m/%d/%Y”格式 In: df Out: Date Close 2006-01-24 48.812471 2006-01-25 47.448712 2006-01-26 53.341202 2006-01-27 58.728122 2006-01-30 59.481986 2006-01-31 55.691974 指数 Out: DatetimeIndex(['2006-01-04', '2006-01-
In: df
Out:
Date Close
2006-01-24 48.812471
2006-01-25 47.448712
2006-01-26 53.341202
2006-01-27 58.728122
2006-01-30 59.481986
2006-01-31 55.691974
指数
Out:
DatetimeIndex(['2006-01-04', '2006-01-05', '2006-01-06', '2006-01-09',
'2006-01-10', '2006-01-11', '2006-01-12', '2006-01-13',
'2006-01-17', '2006-01-18',
...
'2018-02-21', '2018-02-22', '2018-02-23', '2018-02-26',
'2018-02-27', '2018-02-28', '2018-03-01', '2018-03-02',
'2018-03-05', '2018-03-06'],
dtype='datetime64[ns]', name=u'Date', length=3063, freq=None)
进入:
我以前试过这个方法
df1.index = pd.to_datetime(df.index, format = '%m/%d/%Y')
df1.index = df.dt.strftime('%Y-%m-%d')
AttributeError: 'DataFrame' object has no attribute 'dt'
使用-而不是dt
needindex
:
df1.index = pd.to_datetime(df1.index, format = '%m/%d/%Y').strftime('%Y-%m-%d')
相同之处:
df1.index = pd.to_datetime(df1.index, format = '%m/%d/%Y')
df1.index = df1.index.strftime('%Y-%m-%d')
如果需要,请编辑将DatetimeIndex
转换为其他字符串格式:
print (df1.index)
DatetimeIndex(['2006-01-24', '2006-01-25', '2006-01-26', '2006-01-27',
'2006-01-30', '2006-01-31'],
dtype='datetime64[ns]', name='Date', freq=None)
df1.index = df1.index.strftime('%m/%d/%Y')
print (df1)
Close
01/24/2006 48.812471
01/25/2006 47.448712
01/26/2006 53.341202
01/27/2006 58.728122
01/30/2006 59.481986
01/31/2006 55.691974
为什么索引名“Date”不见了?@Maxi-Use
df=df.rename\u axis(None)
或df.index.name=None
@jezreal好的,我试过了,但是在我将更改的版本写入csv后,日期格式恢复为默认格式df1.index.name='Date'df1.to_csv(路径)代码>哎呀,我不明白。需要df1.reset_index().到_csv(path+'RSI1.csv',index=False)
print (df1.index)
DatetimeIndex(['2006-01-24', '2006-01-25', '2006-01-26', '2006-01-27',
'2006-01-30', '2006-01-31'],
dtype='datetime64[ns]', name='Date', freq=None)
df1.index = df1.index.strftime('%m/%d/%Y')
print (df1)
Close
01/24/2006 48.812471
01/25/2006 47.448712
01/26/2006 53.341202
01/27/2006 58.728122
01/30/2006 59.481986
01/31/2006 55.691974