python - pandas groupby column 然后根据第三列创建另外两列

标签 python pandas dataframe

我正在尝试按列对数据框进行分组,并根据此分组获取“已批准”或“未批准”的总值,但没有成功。

例子:

PlaceTest | Approved    
       21 |        1    
       21 |        0    
       22 |        1    
       22 |        0

我想要的输出:

PlaceTest | Approved | NotApproved    
       21 |        1 |           1    
       22 |        1 |           1

谢谢!

最佳答案

给定

>>> df
   PlaceTest  Approved
0         21         1
1         21         0
2         22         1
3         22         0

你可以发布

>>> df.assign(NotApproved=1 - df['Approved']).groupby('PlaceTest').sum().reset_index()
   PlaceTest  Approved  NotApproved
0         21         1            1
1         22         1            1

关于python - pandas groupby column 然后根据第三列创建另外两列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53570890/

相关文章:

python - pandas 数据框中基于现有列值的新列

python - 如何使用 MultiIndex 索引和 MultiIndex 列对 Pandas DataFrame 进行切片?

python - 使 Python 记录器将除日志文件之外的所有消息输出到标准输出

python - 1054, 'field list' 中的未知列

python - Django - WSGIHandler start_response 并返回响应

python - 汇总矩阵中的每个列值

python - Pandas:根据确切的 ID 和最近的日期进行合并

python - 如何在 Mandlebrot tensorflow 程序中显示图像。当前输出是 <IPython.core.display.Image object>

python - 如何使用波浪号运算符将 R 代码重写为 Python Pandas?

r - 查找在多个测试中代表的组