【问题标题】:Dataframe: Stacked Columns, Index to Field数据框:堆积列,字段索引
【发布时间】:2021-08-28 20:45:41
【问题描述】:

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

Screenshot

【问题讨论】:

    标签: python dataframe stock yfinance


    【解决方案1】:

    您应该使用level 参数与stackreset_index 来控制您想要的行为。

    示例: 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 是“公司”??(我不确定
    0, 1, 2 是日期。

    使用x.stack(level=0)只让“公司”级别的堆栈索引(行)

    那么,x.stack(level=0).reset_index(level=0)reset_index(level=0) 部分只允许从索引(行)到列的“日期”

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

    【讨论】:

    • 这正是我所需要的!太感谢了!这是最终的解决方案:df.head(1).stack(level=0).reset_index(level=0).reset_index().rename(columns={'index':'symbol'})
    • @Mitch 别担心,我很高兴听到这个消息 :)
    猜你喜欢
    • 2013-06-10
    • 2020-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-16
    • 2019-11-07
    • 2021-09-27
    • 1970-01-01
    相关资源
    最近更新 更多