将熊猫数据框转换为具有一个标题行和两列
的数据框的最简单方法是什么?来自:
date today
index
1 2016-07-01 2016-09-08
2 2016-07-01 2016-09-08
3 2016-07-01 2016-09-08
4 2016-07-01 2016-09-08
进入这个:
index date today
1 2016-07-01 2016-09-08
2 2016-07-01 2016-09-08
3 2016-07-01 2016-09-08
4 2016-07-01 2016-09-08
答案 0 :(得分:0)
使用reset_index
:
print (df.columns)
Index(['date', 'today'], dtype='object')
print (df.index)
Int64Index([1, 2, 3, 4], dtype='int64', name='index')
df.reset_index(inplace=True)
或者:
df = df.reset_index()
print (df)
index date today
0 1 2016-07-01 2016-09-08
1 2 2016-07-01 2016-09-08
2 3 2016-07-01 2016-09-08
3 4 2016-07-01 2016-09-08
print (df.index)
RangeIndex(start=0, stop=4, step=1)
如果需要删除列index
,请添加参数drop=True
:
df.reset_index(inplace=True, drop=True)
print (df)
date today
0 2016-07-01 2016-09-08
1 2016-07-01 2016-09-08
2 2016-07-01 2016-09-08
3 2016-07-01 2016-09-08
但如果只需删除文字index
,请使用rename_axis
(pandas
0.18.0
中的新内容):
df = df.rename_axis(None)
或者:
#all versions
df.index.name = None
print (df)
date today
1 2016-07-01 2016-09-08
2 2016-07-01 2016-09-08
3 2016-07-01 2016-09-08
4 2016-07-01 2016-09-08
print (df.index)
Int64Index([1, 2, 3, 4], dtype='int64')