對pandas中的DataFrame進行條件篩選,即篩選出符合條件的數據條;這里經常會遇到以下幾種情況,下面舉例說明:
1 df = pd.DataFrame({'A':[100, 200, 300, 400, 500],
'B':['a', 'b', 'c', 'd', 'e'],
'C':[1, 2, 3, 4, 5]}) 2 df A B C 0 100 a 1 1 200 b 2 2 300 c 3 3 400 d 4 4 500 e 5
(1)找出df中A列值為100的所有數據
1 df[df.A==100] A B C 0 100 a 1
這里也可以是小於(<)、大於(>)、小於等於(<=)、大於等於(>=)、不等於(!=)等情況。
(2)找出df中A列值為100、200、300的所有數據
1 num = [100, 200, 300] 2 df[df.A.isin(num)] #篩選出A列值在num列表的數據條 A B C 0 100 a 1 1 200 b 2 2 300 c 3
(3)找出df中A列值為100且B列值為‘a’的所有數據
1 df[(df.A==100)&(df.B=='a')] A B C 0 100 a 1
(4)找出df中A列值為100或B列值為‘b’的所有數據
1 df[(df.A==100)|(df.B=='b')] A B C 0 100 a 1 1 200 b 2
這里需要注意的是,多條件篩選的時候,必須加括號'()'。
