我想将第一个索引列更改为整数类型。
ex)0.0-> 0、1.0-> 1 2.0-> 2 ....
但是,我无法搜索第一列。如您所见,它由多索引组成。请帮助我。
我使用Pandas语法成功地接近了一个值。但是,我不知道如何更改第一列的整个值。
sum count
timestamp(hour) goods price price
0.0 1 1000 40
2 200 29
3 129 11
4 76 5
1.0 1 1000 40
2 200 29
3 129 11
4 76 5
.
.
.
In[61] pivot1.index[0][0]
Out[62] 0.0
答案 0 :(得分:1)
您可以将DataFrame.rename
与level=0
一起使用:
df = pd.DataFrame({
'col':[4,5,4,5,5,4],
'timestamp(hour)':[7,8.0,8,8.0,8,3],
'goods':list('aaabbb')
}).set_index(['timestamp(hour)','goods'])
print (df)
col
timestamp(hour) goods
7.0 a 4
8.0 a 5
a 4
b 5
b 5
3.0 b 4
df = df.rename(int, level=0)
print (df)
col
timestamp(hour) goods
7 a 4
8 a 5
a 4
b 5
b 5
3 b 4
答案 1 :(得分:0)
您可以:
df.index = df.index.set_levels([df.index.levels[0].astype(int), df.index.levels[1]])
但是我猜jezrael的答案更好。