python - 向 Pandas 数据透视表添加过滤器

标签 python pandas pivot-table

我想在数据透视表中添加一个过滤条件,如下所示:

(选择 v2 等于 'A' 的值)

pd.pivot_table(df,index=['v1'],columns=['v2'=='A'],values=['v3'],aggfunc='count')

这可能吗?

最佳答案

这是 Grr's 的扩展回答。

使用他们的建议:

pd.pivot_table(df[df.v3 == some_value], index='v1', columns='A', values='v3', aggfunc='count')

产生错误:

"TypeError: pivot_table() got multiple values for argument 'values'"

我做了一些微调,它对我有用:

df[df.v3 == some_value].pivot_table(index='v1', columns='A', values='v3', aggfunc='count')

添加多个过滤器: 使用 &| 运算符和一组 () 来指定优先级。 使用 andor 会导致错误。

df[(df.v3 == some_value) & (df.v4 == some_value)].pivot_table(index='v1', columns='A', values='v3', aggfunc='count')

关于python - 向 Pandas 数据透视表添加过滤器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43235930/

相关文章:

python - 反转 Pandas DataFrame 中列顺序的大 O 复杂度是多少?

python - 在 linux mint 上安装 python3-venv 模块

python - pandas 数据透视表 : calculate weighted averages through aggfunc

python - 在Python中按日期过滤Excel中的数据

python - 处理具有可怕日期时间数据的数据集

mysql - 如何在 MySQL 中返回数据透视表输出?

excel - 使用 VBA 创建具有不同计数的数据透视表

python - 如何重构此 django 查询以不选择每个单独的对象?

python - 如何构建隐含概率。 python中泊松分布的矩阵

java - XSSF(Apache POI) - 从数据透视表中的单列值添加多列标签