python pandas groupby和过滤器功能,无需两个预测即可删除候选人的姓名

问题描述 投票:1回答:1

问题是使用熊猫,删除所有无效的名称和没有两个预测的任何候选者。在数据框中,某些候选名称在两个预测日期出现两次,或者某些候选名称仅出现一次。因此,我想删除那些只有一个预测日期的候选人。

我正在尝试使用groupby和filter函数来删除不符合两个条件的候选人的姓名:('forecast_date'=='2018-08-11')AND('forecast_date'=='2018-11 -06')

这是我的代码:

election_sub=election_sub.dropna(subset=['candidate'])
election_sub.groupby('candidate')
grouped.filter(lambda x: (x['forecast_date']== '2018-08-11')&(x['forecast_date']=='2018-11-06'))

以下是数据框:dataframe

python pandas filtering pandas-groupby
1个回答
1
投票

[存在一个逻辑问题,不能同时将&链接为AND,将|链接为OR,然后通过any测试每个组是否至少有一个匹配项:

© www.soinside.com 2019 - 2024. All rights reserved.