当前位置: 首页 > 知识库问答 >
问题:

将多索引数据帧的索引值转换为列[duplicate]

季骏祥
2023-03-14

我有一个多索引数据框(索引日期公司df如下:

                                Amount
Date      Company               
2019-10-01   BoA              3.924454e+09
             Starfirst        1.346442e+04
             Republic         7.006446e+06
2019-11-01   BoA              2.176354e+09
             Starfirst        1.287342e+04
             Republic         3.545446e+06

我想将df转换为以下内容(其中公司索引转换为列,其中金额为值,日期保留为索引):

                BoA            Starfirst          Republic
Date                      
2019-10-01  3.924454e+09       1.346442e+04       7.006446e+06
2019-11-01  2.176354e+09       1.287342e+04       3.545446e+06

我一直在努力做到这一点,但还没走多远。

共有1个答案

傅高逸
2023-03-14

使用取消堆叠取消堆叠最内部的索引级别。

df['Amount'].unstack()

输出:

Company              BoA   Republic  Starfirst
Date                                          
2019-10-01  3.924454e+09  7006446.0   13464.42
2019-11-01  2.176354e+09  3545446.0   12873.42
 类似资料:
  • 我有两个形状相同的python数据帧,例如: 我想使用df2中的值作为行索引来选择df1中的值,并创建一个形状相等的新数据帧。预期结果: 我已尝试使用.loc,它在单个列中运行良好: 但是我不能同时在所有列上使用. loc或. iloc。我想避免循环来优化性能,因为我正在处理一个大数据帧。有什么想法吗?

  • 问题内容: 我有以下熊猫数据框: 我想将日期时间索引转换为数据框的列。我尝试过,但结果没有改变。任何想法? 问题答案: 需要分配输出或参数:

  • 我想更改我的熊猫数据框架中的一个值,我想我误解了索引的工作方式。 我得到输出 我想将df中的值0.665873更改为1。我试过了 但我得到了错误 我试图用示例数据帧复制该问题,但无济于事。 我认为问题在于,当我使用实际数据时,我得到了一系列的输出,但当我使用实践数据时,得到了一个浮点。为什么我得到的是这个系列而不是浮点0.665873?

  • 我有一个多索引数据框,看起来像 uid tid文本 abc x t1 bcd y t2 uid 和 tid 是索引。我有一个 uid 列表,并希望获取与该列表中的 uid 相对应的行,但保留第 2 级索引值 (tid)。我想在不运行任何显式循环的情况下执行此操作。这可能吗?

  • 我正在尝试从多索引数据帧中仅使用一个索引来创建新的数据帧。 理想情况下,我想要这样的东西: 和: 基本上,我想删除除level之外的多索引的所有其他索引。有没有一个简单的方法可以做到这一点?