python - 检查一个组的所有成员是否具有相同的值,然后将它们全部放在一个数据框中
问题描述
我有一个大数据框,如下所示:
Letter Action
a Do
b Do
b Do
b Do
b Do
c Do
c Don’t
c Don’t
c Don’t
c Do
c Don’t
c Don’t
c Don’t
c Do
我需要为所有行获取所有操作为 Do 的字母。
我想要的输出如下所示:
Letter Action
a Do
b Do
b Do
b Do
b Do
我试过了
df1 = df[(df.groupby('Letter', as_index=False).Action.nunique().eq(1))]
但我无法得到我需要的东西。如果有人能提供帮助,我将不胜感激。
解决方案
尝试transform
df1 = df[(df.groupby('Letter').Action.transform('nunique').eq(1))]
为了改进
df1 = df[(df.Action.eq('Do').groupby(df['Letter']).transform('all')]
推荐阅读
- python - 将 href 添加到 panda .read_html DF
- reporting-services - SSRS硬编码矩阵的顺序
- firebase - 在没有 android studio 的情况下在本地运行 flutter web 应用程序会引发 firebase 错误
- vue.js - 拖放后的 AG-Grid 数据更新
- go - 如何将“真实”堆栈跟踪放在“stacktrace”键下,而不是“msg”键下?
- javascript - 警告:React.js Web 应用程序中的未知事件处理程序属性“onClick”
- c# - 解析命令行参数并执行方法
- c# - 使用 iTextSharp 创建 PDF 时从流中添加 PDF
- javascript - 如何将 HTML 标记添加到 JS 文件
- python - Python kubernetes 客户端请求因“无法获取本地颁发者证书”而失败