将pandas中的数据透视表转换为具有单个标题行的平面表格格式

时间:2016-09-08 11:29:56

标签: python pandas dataframe

将熊猫数据框转换为具有一个标题行和两列

的数据框的最简单方法是什么?

来自:

          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

1 个答案:

答案 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_axispandas 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')