如何进行分组扩展

时间:2017-06-22 18:52:42

标签: python python-3.x pandas numpy pandas-groupby

当你运行s.expanding().func时,它会在大小增加的系列上运行func。 我有一个系列s,其中索引是MultiIndex。重要的是日期。许多日期重复。我想运行expanding,这样每次迭代不会扩展1行,而是会在整个下一个日期扩展。

Hacky的做法是在按日期排序的列表上进行扩展,然后记录每个日期的最后一个实例,但我想知道是否会有更清晰的方法来执行此操作?

编辑: 我上面列出的方法是SUPER慢,因为它在每个位置计算而不是每隔一段时间计算一次,因此我希望找到一种方法使其更快并且可能坚持使用本机Numpy或Pandas函数

1 个答案:

答案 0 :(得分:0)

cur_dat = pd.DataFrame()
ret = {}
for key, new_dat in df.groupby(group_keys)
    cur_dat = cur_dat.append(new_dat)
    #DO STUFF
    ret[key] = return_Value

这也可以让您对如何组合数据进行大量控制。偶尔我会在其系列之前取消堆叠并将其全部附加(如melt中的R)。

简单的解决方案,只读了GroupBy和core.Windows中的所有Pandas源代码来提出它:)