参考:
https://www.cnblogs.com/beyondChan/p/10861045.html

对pandas中的DataFrame进行条件筛选,即筛选出符合条件的数据条;这里经常会遇到以下几种情况,下面举例说明:

df = pd.DataFrame({'A':[100, 200, 300, 400, 500], 
             'B':['a', 'b', 'c', 'd', 'e'],
             'C':[1, 2, 3, 4, 5]})
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的所有数据

df[df.A==100]
     A    B    C
 0    100    a    1

这里也可以是小于(<)、大于(>)、小于等于(<=)、大于等于(>=)、不等于(!=)等情况。

(2)找出df中A列值为100、200、300的所有数据

num = [100, 200, 300]
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’的所有数据

df[(df.A==100)&(df.B=='a')]
        A    B    C
 0    100    a    1

(4)找出df中A列值为100或B列值为‘b’的所有数据

df[(df.A==100)|(df.B=='b')]
        A    B    C
 0    100    a    1
 1    200    b    2