我有多级数据框如何将第二级日期设置为公共索引

I have dateframe which is multilevel how do I set date in second level as common index

我目前有一个多级数据框,第一级 header 是公司名称,第二级是相应公司的日期、规模和图片。我想将索引设置为日期,因此在第二级中不再有日期。

我觉得你需要set_index by tuples, for rename index names use rename_axis:

print (df)
        name                
        date    size   price
0 2014-01-08  0.7990  422.65
1 2014-01-09  0.8095  421.26
2 2014-01-10  0.8135  423.35
3 2014-01-13  0.8065  417.78

df = df.set_index(('name','date')).rename_axis(None)
print (df)
              name        
              size   price
2014-01-08  0.7990  422.65
2014-01-09  0.8095  421.26
2014-01-10  0.8135  423.35
2014-01-13  0.8065  417.78

通过评论编辑:

print (df.set_index([('name','date'), ('name','size')]))
                             name
                            price
(name, date) (name, size)        
2014-01-08   0.7990        422.65
2014-01-09   0.8095        421.26
2014-01-10   0.8135        423.35
2014-01-13   0.8065        417.78

df = df.set_index([('name','date'), ('name','size')]).rename_axis(('date', 'size')) 
print (df)
                     name
                    price
date       size          
2014-01-08 0.7990  422.65
2014-01-09 0.8095  421.26
2014-01-10 0.8135  423.35
2014-01-13 0.8065  417.78