使用df.query()方法筛选DataFrame数据,要比loc方法来的简洁
常用方法
# 常用筛选
df.query('节庆=="夏季"')
#loc方法对比
df.loc[df['节庆']=="夏季"]
数学表达式
# 数学表达式 > , + - *
df.query('总数量>10000').head()
#loc方法对比
df.loc[df['总数量']>10000].head()
通过变量筛选
# 通过变量筛选
season = "春节"
df.query('节庆==@season').head()
列表筛选
# 列表筛选 in not in
df.query('节庆 in ["夏季","春节"]')
#loc方法对比
df.loc[df['节庆'].isin(["夏季","春节"])]
使用in 和not in
多条件筛选
# 多条件筛选 and or | &
df.query('节庆=="夏季" & 合格 > 2000')
#loc方法对比
df.loc[(df['节庆']=="夏季") & (df['合格']>2000)]
注意列名称有空格的情况
df.query("`this year` < 5 ")
使用反引号