1. 程式人生 > 程式設計 >pandas 像SQL一樣使用WHERE IN查詢條件說明

pandas 像SQL一樣使用WHERE IN查詢條件說明

in

newDropList = [9,10,11,12,22,50,51,60,61]
newDB = newDB[newDB['groupId'].isin(newDropList)]

直接查詢表中groupId列,值為newDropList的記錄

not in

newDropList = [9,61]
newDB = newDB[-newDB['groupId'].isin(newDropList)]

直接加一個" - " 號即可

補充知識:pandas條件組合篩選和按範圍篩選

1、從記錄中選出所有fault_code列的值在fault_list= [487,479,500,505]這個範圍內的記錄

record2=record[record['FAULT_CODE'].isin(fault_list)]

pandas 像SQL一樣使用WHERE IN查詢條件說明

要用.isin 而不能用in,用 in以後選出來的值都是True 和False,然後報錯:

ValueError: The truth value of a Series is ambiguous. Use a.empty,a.bool(),a.item(),a.any()

2、選出所有WTGS_CODE=20004013的記錄

set=20004013

record= record[record['WTGS_CODE'] == set]

pandas 像SQL一樣使用WHERE IN查詢條件說明

3、其次,從記錄中選出所有滿足set條件且fault_code列的值在fault_list= [487,505]這個範圍內的記錄

record_this_month=record[(record['WTGS_CODE']==set)&(record['FAULT_CODE'].isin(fault_list))]

pandas 像SQL一樣使用WHERE IN查詢條件說明

(1)多個條件篩選的時候每個條件都必須加括號。

(2)判斷值是否在某一個範圍內進行篩選的時候需要使用DataFrame.isin()的isin()函式,而不能使用in。

以上這篇pandas 像SQL一樣使用WHERE IN查詢條件說明就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。