问题是使用熊猫,删除所有无效的名称和没有两个预测的任何候选者。在数据框中,某些候选名称在两个预测日期出现两次,或者某些候选名称仅出现一次。因此,我想删除那些只有一个预测日期的候选人。
我正在尝试使用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'))
[存在一个逻辑问题,不能同时将&
链接为AND
,将|
链接为OR
,然后通过any
测试每个组是否至少有一个匹配项: