Pandas高级:query方法教你优雅的查询

本文介绍了Pandas中的query方法,通过提供优雅的代码示例展示了如何使用此方法进行数据查询。query方法允许引用变量并支持包含空格或运算符的列名,使得处理复杂查询变得更加简洁。文章通过比较传统查询方式与query方法,突显了query在多条件查询时的高效和便利。
摘要由CSDN通过智能技术生成

好久好久没写博客了。最近看到个很实用的pandas方法,记录下。

query()

DataFrame.query(exprinplace=False**kwargs),用于通过boolean表达式来查询dataframe中的列。

主要参数为expr,它是字符串表达式,有如下说明:

可以引用变量,方法是在变量前添加一个@字符,例如@a + b。

可以在反引号内将包含空格或运算符的列名引用起来。 这样,您还可以转义以数字开头或Python关键字的名称。 基本上是无效的Python标识符。 

例如,如果有一列称为a a,而您想将其与b相加,则查询应为`a a` + b。

Examples

df = pd.DataFrame({'A': range(1, 6),
                   'B': range(10, 0, -2),
                   'C C': range(10, 5, -1)})
df

	A	B	C C
0	1	10	10
1	2	8	9
2	3	6	8
3	4	4	7
4	5	2	6

如果我要查询A列值大于B列值的结果,正常情况我们会做如下操作:

df[df.A > df.B]  或  df[df['A'] > df['B']]

	A	B	C C
4	5	2	6

然而这不够优雅,

评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值