首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >熊猫DataFrame --> GroupBy --> MultiIndex过程

熊猫DataFrame --> GroupBy --> MultiIndex过程
EN

Stack Overflow用户
提问于 2018-12-01 21:05:07
回答 1查看 95关注 0票数 1

我试图将以下形式的大型DataFrame重构为MultiIndex:

代码语言:javascript
复制
        date  store_nbr  item_nbr  units  snowfall  preciptotal  event
0 2012-01-01          1         1      0       0.0          0.0    0.0
1 2012-01-01          1         2      0       0.0          0.0    0.0
2 2012-01-01          1         3      0       0.0          0.0    0.0
3 2012-01-01          1         4      0       0.0          0.0    0.0
4 2012-01-01          1         5      0       0.0          0.0    0.0

我希望按store_nbr (1-45)分组,在每个store_nbr组内按item_nbr (1-111)分组,然后对相应的索引对(例如,store_nbr=12,item_nbr=109)按时间顺序显示行,以便有序的行看起来如下:

代码语言:javascript
复制
store_nbr=12, item_nbr=109:   date=2014-02-06, units=0, snowfall=...
                              date=2014-02-07, units=0, snowfall=...
                              date=2014-02-08, units=0, snowfall=...
...                           ...
store_nbr=12, item_nbr=110:   date=2014-02-06, units=0, snowfall=...
                              date=2014-02-07, units=1, snowfall=...
                              date=2014-02-08, units=1, snowfall=...
...

在这里,groupbyset_index的某些组合看起来可能很有用,但我在下面这一行之后就陷入了困境:

代码语言:javascript
复制
grouped = stores.set_index(['store_nbr', 'item_nbr'])

这将产生以下MultiIndex:

代码语言:javascript
复制
                         date  units  snowfall  preciptotal  event
store_nbr item_nbr                                                
1         1        2012-01-01      0       0.0          0.0    0.0
          2        2012-01-01      0       0.0          0.0    0.0
          3        2012-01-01      0       0.0          0.0    0.0
          4        2012-01-01      0       0.0          0.0    0.0
          5        2012-01-01      0       0.0          0.0    0.0

从这里有人有什么建议吗?有什么简单的方法可以通过操纵groupby对象来做到这一点呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-04 08:19:31

您可以使用以下方法对行进行排序:

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

https://stackoverflow.com/questions/53575037

复制
相关文章

相似问题

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