首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >熊猫多重索引

熊猫多重索引
EN

Stack Overflow用户
提问于 2021-02-13 15:43:21
回答 1查看 36关注 0票数 0

请考虑以下数据框架。

代码语言:javascript
复制
    In [3]: idx = pd.MultiIndex.from_product([['2021-02-10', '2021-02-11', '2021-02-12'],
   ...:                                   ['Orders', 'GMV', 'AOV']],
   ...:                                  names=['Date', 'Metric'])
   ...: col = ['Yesterday', 'Yesterday-1', 'Difference', 'Difference-1']
   ...: 
   ...: df = pd.DataFrame('-', idx, col)
   ...: print(df)
                  Yesterday Yesterday-1 Difference Difference-1
Date       Metric
2021-02-10 Orders         -           -          -            -
           GMV            -           -          -            -
           AOV            -           -          -            -
2021-02-11 Orders         -           -          -            -
           GMV            -           -          -            -
           AOV            -           -          -            -
2021-02-12 Orders         -           -          -            -
           GMV            -           -          -            -
           AOV            -           -          -            -

例如,我在昨天和昨天有一些值--1列,而Difference列需要采用如下格式:

代码语言:javascript
复制
df.loc['2021-02-11', 'Difference'] = df.loc['2021-02-11', 'Orders] - df.loc['2021-02-10', 'Orders]

什么实际上不工作,我需要相同的每公制,我怎么做呢?我是否创建了for循环并使用iloc并遍历每个度量以填充差异列?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-13 16:26:12

你应该清楚地编辑你的问题,但我认为你需要:

代码语言:javascript
复制
df['Difference'] = df['Yesterday'] - df.groupby(level=1)['Yesterday'].shift()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66186915

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档