【发布时间】:2021-07-14 00:22:42
【问题描述】:
我正在尝试在 DataCamp 上使用 Python 完成 Pandas 课程,但遇到了问题。我得到了解决方案,但我只想问。测验很简单:对一组数据使用 numpy 函数
这是他们完成这个小测验的建议提示:
.agg() can take in a list of functions. The functions shouldn't be called, so don't use parentheses with them.
这是我查找每个商店typeweekly_sales 的最小值、最大值和中位数的代码type
sales_stats = sales.groupby("type")["weekly_sales"].agg([np.min(), np.max(), np.mean(), np.median()])
这是错误:
File "<stdin>", line 4, in mean
TypeError: _mean_dispatcher() missing 1 required positional argument: 'a'
所以我把它改成:
sales_stats = sales.groupby("type")["weekly_sales"].agg([np.mean(sales["weekly_sales"]),np.median,np.min,np.max])
但是又出现了一个错误,所以我看看解决办法:
sales_stats = sales.groupby("type")["weekly_sales"].agg([np.min, np.max, np.mean, np.median])
这是否意味着我们不必向这些 numpy 方法传递任何参数?并且 .agg 函数会将“weekly_sales”作为参数传递给他们每个人?如果是这样,如果我想将两个参数传递给这些方法,例如monthly_sales 这是正确的方法吗?
sales_stats = sales.groupby("type")["weekly_sales","monthly_sales"].agg([np.min, np.max, np.mean, np.median])
【问题讨论】:
标签: python pandas aggregation