2015-07-12 22 views
-2

我的数据集看起来移动GroupBys

1 
2 
3 
4 
5 
... 

我有一个中间步骤,应该做如下因素

1 
1,2 
1,2,3 
1,2,3,4 
1,2,3,4,5 
.... 

最后计算出其平均

1 
1.5 
2 
2.5 
3 
... 

问题 一)有没有办法在python/py-spark中实现这个? b)有没有开箱即用的方法/ api? c)我搜索这种解决方案最接近的是移动平均/滚动平均/移动组。这个操作有术语吗?

+0

你是什么意思'计算它的意思'?你计算每一行的平均值吗? (如果是的话,你已经犯了数学错误) – maxymoo

+0

对不起,错字最大 –

回答

0

在熊猫,这被称为expanding_mean

import pandas as pd 
df = pd.Series(range(1,6)) 
s = pd.Series(range(1,6)) 
pd.expanding_mean(s) 
Out[128]: 
0 1.0 
1 1.5 
2 2.0 
3 2.5 
4 3.0 
dtype: float64 

我不知道怎么你会在星火做到这一点,但是这么说,我也不能确定这是否是一个“parallelalizable “任务:因为每一步都依赖于上一步,所以我不确定如何将其分解为步骤。

+0

有没有办法做到这一点火花。我们是否可以并行执行此操作? –