首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >熊猫群中的多栏连接

熊猫群中的多栏连接
EN

Stack Overflow用户
提问于 2014-08-29 16:59:14
回答 1查看 470关注 0票数 0

我有一个大的数据和一个小的数据,我想加入到一起。小数据存储与大数据按组的值范围相对应的最大每周值。我想加入每组每周的最大值到大帧。

大框架:

代码语言:javascript
运行
复制
L
datetime     group    value
2014-05-07   A        3 
2014-05-07   B        3 
2014-05-14   A        4 
2014-05-14   B        2 
2014-05-15   A        6 
2014-05-15   B        4 
2014-05-16   A        7 
2014-05-16   B        10

小框架:

代码语言:javascript
运行
复制
S
weeknumber   group    maxval
1            A        3
1            B        3
2            A        7
2            B        10

注这些是假设的周值,实际值将对应于一年中52周中的周数。

为了计算小帧,我们可以在我们的日期时间上设置一个索引:

代码语言:javascript
运行
复制
import pandas as pd
L.index = pd.to_datetime(L.datetime)

我们可以按小组和周分组,如下所示:

代码语言:javascript
运行
复制
week = L.groupby([(lambda x : x.week),'group'], as_index=False)

计算每周最大值很简单:

代码语言:javascript
运行
复制
weekmax = week.value.max()

这是返回的小框架,这是我被困的地方。我已经尝试过合并数据文件和执行联接,但是无法使它工作。

编辑:这就是我希望连接后的最后一个框架的样子:

代码语言:javascript
运行
复制
datetime     group    value    maxval
2014-05-07   A        3        3
2014-05-07   B        3        3
2014-05-14   A        4        7
2014-05-14   B        2        10
2014-05-15   A        6        7
2014-05-15   B        4        10
2014-05-16   A        7        7
2014-05-16   B        10       10
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-08-29 17:22:38

您希望使用transform,它将返回类似索引的聚合版本。因此,您可以直接将其分配回较大的帧,如下所示:

代码语言:javascript
运行
复制
In [189]: L['maxval'] = week['value'].transform('max')

In [190]: L
Out[190]: 
              datetime group  value  maxval
datetime                                   
2014-05-07  2014-05-07     A      3       3
2014-05-07  2014-05-07     B      3       3
2014-05-14  2014-05-14     A      4       7
2014-05-14  2014-05-14     B      2      10
2014-05-15  2014-05-15     A      6       7
2014-05-15  2014-05-15     B      4      10
2014-05-16  2014-05-16     A      7       7
2014-05-16  2014-05-16     B     10      10
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25572826

复制
相关文章

相似问题

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