我很难对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] 平均间隙(a)将给出((3-1)+(7-3))/2)=3.0
Dataframe:
one two
a 1
a 3
a 7
b 8
b 9
desired result
Dataframe:
one two
a 3
b 1
df.groupby(['one'])['two']。???
我对熊猫不熟悉。我读到groupby一次获取每行的值,而不是完整的序列。所以我不能在groupby之后使用lambda。请帮忙!
使用自定义函数,可以执行以下操作:
并重置索引:
另一种选择是:
您的方法还可以用于以下方面:
a = np.asarray(a)
是必需的,否则您将在b.append((a[i+1]-a[i]))
中获得键错误。相关问题 更多 >
编程相关推荐