![](/img/trans.png)
[英]Pandas filter by more than one “contains” for not one cell but entire column
[英]pandas: filter rows using more than one column values
我根據給定列的值過濾出數據框的某些行,如下所示:
new_df = my_df.loc[my_df['A_count'] == 0.0]
該代碼工作正常。 然后,我嘗試使用如下兩列中的值過濾掉行:
new_df = my_df.loc[my_df['A_count'] == 0.0 & my_df['B_count'] == 0.0 ]
然后代碼給了我錯誤:
TypeError: cannot compare a dtyped [float64] array with a scalar of type [bool]
我如何實際使用超過一列的值執行過濾器? 謝謝!
正如@root指出的那樣...
new_df = my_df.loc[(my_df['A_count'] == 0.0) & (my_df['B_count'] == 0.0)]
但是,您也可以使用query
我喜歡query
因為它會自動為您過濾,並且查詢語法通常非常直觀。 請注意缺少括號。
my_df.query('A_count == 0 & B_count == 0')
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.