1.query()
主要功能:按条件筛选数据
df.query(expr,inplace = False,** kwargs )# 使用布尔表达式查询帧的列
参数:
# expr:str要评估的查询字符串。你可以在环境中引用变量,在它们前面添加一个'@'字符 。@a + b
# inplace=False:是否修改数据或返回副本
# kwargs:dict关键字参数
import numpy as np
import pandas as pd
df=pd.DataFrame(np.arange(48).reshape(12,4),columns=list('abcd'))
df
Out[8]:
a b c d
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
3 12 13 14 15
4 16 17 18 19
5 20 21 22 23
6 24 25 26 27
7 28 29 30 31
8 32 33 34 35
9 36 37 38 39
10 40 41 42 43
11 44 45 46 47
df1=df.query('a>20')
df1
Out[10]:
a b c d
6 24 25 26 27
7 28 29 30 31
8 32 33 34 35
9 36 37 38 39
10 40 41 42 43
11 44 45 46 47
df2=df.query('a>20 & b<30')
df2
Out[12]:
a b c d
6 24 25 26 27
7 28 29 30 31
df3=df.query('a>20 | b<30')
df3
Out[14]:
a b c d
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
3 12 13 14 15
4 16 17 18 19
5 20 21 22 23
6 24 25 26 27
7 28 29 30 31
8 32 33 34 35
9 36 37 38 39
10 40 41 42 43
11 44 45 46 47