Google 趋势 - 如果 isPartial 为真,则删除最后一行

Google Trends - delete last row if isPartial is true

主要是向使用 google 趋势的人问这个问题,尽管它很笼统。

我的代码在 Google Trends returns 一个 df 中,如下所示。

              1                  2                  3
              Spain   isPartial  France  isPartial  Italy  isPartial
date
2020-10-11      41       False     37     False      25      False
2020-10-18      40       False     39     False      23      False
2020-10-25      42       True      43     True       25      True      

当然,我已经尝试了很多方法来删除最后一行,以防它包含 True。


1) df2 = df[~df['isPartial].str.contains('True')]   --> AttributeError: 'DataFrame' object has no attribute 'str'

2) df2 = df[~df.eq('True').any(1)]   --> does nothing

3) df2 = df.[~[df[.iloc[:,1]].str.contains('True')] --> AttributeError: 'list' object has no attribute 'str'

我该怎么办?

谢谢。

MultiIndex in columns 的二级 select 中使用 DataFrame.xs

df1 = df[~df.xs('isPartial', axis=1, level=1).any(1)]
print (df1)
               1                2               3          
           Spain isPartial France isPartial Italy isPartial
date                                                       
2020-10-11    41     False     37     False    25     False
2020-10-18    40     False     39     False    23     False

详情:

print (df.xs('isPartial', axis=1, level=1))
                1      2      3
date                           
2020-10-11  False  False  False
2020-10-18  False  False  False
2020-10-25   True   True   True