数据框:堆叠列、字段索引

Dataframe: Stacked Columns, Index to Field

我有一个股票价格数据框,如所附屏幕截图所示。这些列是分层的,公司是一级列,价格类别是下一级。另外,日期是索引。我希望公司符号成为索引,日期成为一个字段(其中一列),但我不知道从哪里开始,而且我已经为此苦苦挣扎了一段时间。有人可以指出我正确的方向吗?所附屏幕截图中的箭头显示了我要完成的操作。

Screenshot

您应该使用带有 stackreset_indexlevel 参数来控制您想要的行为。

示例: x=pd.DataFrame(columns=[['a','a','b','b','c','c'],[3,4,3,4,3,4]],data=np.random.rand(3,6))

a, b, c是'company'??(我不确定
0, 1, 2 是日期。

使用x.stack(level=0)只让'company'级堆叠到索引(行)

然后,x.stack(level=0).reset_index(level=0)reset_index(level=0) 部分只让 'date' 从索引(行)到列

如果需要,您也可以用 x.stack(level=0).reset_index(level=0).rename(columns={'level_0':'date'}) 重命名它。