我在Pandas中对每组
我的自定义函数接受一系列数字,并计算相邻对的差异,并返回所有差异的平均值。以下是代码:
所以如果
groupby
列应用自定义函数遇到了困难。我的自定义函数接受一系列数字,并计算相邻对的差异,并返回所有差异的平均值。以下是代码:
def mean_gap(a):
b = []
for i in range(0, len(a)-1):
b.append((a[i+1]-a[i]))
return np.mean(b)
所以如果
a = [1,3,7]
,mean_gap(a)
将会给我 ((3-1)+(7-3))/2) = 3.0
。 Dataframe:
one two
a 1
a 3
a 7
b 8
b 9
期望结果:
Dataframe:
one two
a 3
b 1
df.groupby(['one'])['two'].???
groupby
是逐行处理数值,而不是整个系列。所以我不能在groupby
之后使用lambda函数。