python - 如何根据 GroupBy 条件从另一个数据框创建数据框
问题描述
我不知道如何使用 groupby 条件基于另一个数据框创建数据框。例如,我有一个数据框,如果我应用该函数:
flights_df.groupby(by='DepHour')['Cancelled'].value_counts()
我得到这样的东西
DepHour Cancelled
0.0 0 20361
1 7
1.0 0 5857
1 4
2.0 0 1850
1 1
**3.0 0 833**
4.0 0 3389
1 1
5.0 0 148143
1 24
可以看出,因为DepHour == 3.0
没有取消航班。
使用我用来生成此输出的相同数据框,我想创建另一个数据框,其中仅包含 DepHour 没有取消飞行的值。在这种情况下,输出将是一个仅包含 值的数据帧DepHour == 3.0
。
我知道我可以使用掩码,但它只允许过滤值 where cancelled == 0
(即DepHour cancelled == 0
包含 where 的所有其他值)。
感谢和抱歉我的英语不好!
解决方案
可能有一种更清洁的方法(可能不使用groupby
两次),但这应该可以工作:
flights_df.groupby('DepHour') \
.filter(lambda x: (x['Cancelled'].unique()==[0]).all()) \
.groupby('DepHour')['Cancelled'].value_counts()
推荐阅读
- git - 当两者都在发展时,Git 的良好实践可以使分叉项目与源源保持同步
- python - AttributeError:模块'cv2.cv2'没有属性'DataFrame'
- django - Django Admin 模型编辑器:如果未选中另一个布尔字段,则字段灰显
- c++ - 当唯一的区别是通过引用或复制传递的参数时,解决歧义函数调用
- c - c 中的基本 MathGL 示例无法编译
- reactjs - XXXXX 无法验证到在线状态,客户端无法验证,获得 HTTP 状态 404
- java - 线程“主”java.lang.NoClassDefFoundError 中的异常:javax/xml/bind/annotation/XmlSchema
- git - 错误:无法更新 ref 'refs/remotes/origin/xyz':无法为 '.git/logs/refs/remotes/origin/xyz' 创建目录:没有这样的文件或目录
- compilation - 对于 mlir,“阻抗不匹配”是什么意思?
- python - 尝试在 PyTorch 中加载检查点时没有名为“parse_config”的模块