首页 > 解决方案 > 熊猫数据框操作

问题描述

我使用 pandas 数据框来处理我的数据集。我有 3 列,airport_id airport_id 和 delay。我想删除所有少于 5 家航空公司的始发机场。

我这样做了:

grouped_size = df.groupby(['OP_CARRIER_AIRLINE_ID','ORIGIN_AIRPORT_ID']).size()

这给了我每个机场的航空公司数量(我希望),但我不知道如何删除少于 5 家航空公司的航空公司。谢谢!

标签: pythonpandaspandas-groupby

解决方案


这是一个简单的方法:

grouped_size = df.groupby(['OP_CARRIER_AIRLINE_ID','ORIGIN_AIRPORT_ID']).size().reset_index()
grouped_size.columns = ['OP_CARRIER_AIRLINE_ID','ORIGIN_AIRPORT_ID', 'size']
hi_mask = grouped_size['size'] > 5
grouped_size = grouped_size[hi_mask]

推荐阅读