python - Pandas 、应用函数和 lambda

标签 python pandas dataframe

在下面的 pandas 代码中,为什么参数中不需要 df

df.groupby('Category').apply(lambda df,a,b: sum(df[a] * df[b]), 'Weight (oz.)', 'Quantity')

最佳答案

第一个参数隐式传递给 apply 调用中的函数。因此,它不会再次出现在 args 中。你实际上可以在 apply to 中重写匿名函数

 df.groupby('Category').apply(lambda x: sum(x["Weight (oz.)"] * x["Quantity"]))

这里根本不使用 args。很明显,x 是第一个未显式传递的参数。

关于python - Pandas 、应用函数和 lambda,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42683039/

相关文章:

regex - 使用正则表达式选择 numpy 数组中的元素

python - 一定时间后 Shellscript : kill . py

Pandas:按四舍五入的 float 分组

python - 如何使用 strftime 以正确的顺序绘制月份名称?

python - 两列的卡住集并集

python - 如何在一列中查找具有相同值但在另一列中具有不同值的记录

python - 当我使用 apply 和 datetime 函数时,如何编写日期格式?

python - pymc3 生成带有参数数组的随机变量

python - 为什么追加或连接后 Pandas 数据框的大小不同?

Python ttk.combobox 强制发布/打开