【问题标题】:Rows into columns in a multi-index Pandas DataFrame多索引 Pandas DataFrame 中的行到列中
【发布时间】:2020-09-13 07:15:51
【问题描述】:

我有一个带有多索引的 DataFrame,其中一个是日期,另一个是从 0 到 1267 的编号,如图所示。

如何将索引 0-1267 作为列而不是行并将日期作为唯一的行索引?

【问题讨论】:

    标签: python pandas dataframe indexing


    【解决方案1】:

    选择一些列,然后在第一级使用Series.unstack

    df1 = df['CUMULATIVE FRACTION'].unstack(0)
    

    或者如果需要 MultiIndex 在列中使用 DataFrame.unstack:

    df2 = df.unstack(0)
    

    【讨论】:

    • 出现错误:“ValueError:索引包含重复条目,无法重塑”。是因为行的日期不同吗?
    • @K.lid 问题重复,试试
    • 试试什么,抱歉?
    • @K.lid 尝试使用df1 = df. groupby(df. index). mean()['CUMULATIVE FRACTION'].unstack(0)df1 = df. groupby(df. index).sum()['CUMULATIVE FRACTION'].unstack(0) 获取聚合值。
    猜你喜欢
    • 2014-03-30
    • 1970-01-01
    • 2016-02-17
    • 2019-04-13
    • 2018-02-15
    • 2020-03-10
    • 2016-05-03
    • 1970-01-01
    • 2021-11-11
    相关资源
    最近更新 更多