我观察到 Pandas GroupBy 方法的一种行为agg()
,我无法根据文档进行解释。
我想对分组的DataFrame
. 让我们看看这个代码片段:
def aggregate_point(x):
print(x)
exit()
data = data.groupby(
pd.Grouper(level='time', freq='1H')).agg(aggregate_point)
这会Series
为每个组打印一个。
但是,当我将任何附加参数传递给 时aggregate_point
,将DataFrame
打印完整内容:
def aggregate_point(x, score):
print(x)
exit()
data = data.groupby(
pd.Grouper(level='time', freq='1H')).agg(aggregate_point, score=True)
为什么score
参数会影响x
( DataFrame
vs. Series
)的值?
Pandas 团队成员确认此行为是一个错误:https : //github.com/pandas-dev/pandas/issues/39489。
我最终使用了apply()
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句