在 Pandas 中,我们可以使用查询函数 query()
来根据列值过滤行。
通过 query()
函数,我们可以指定一些条件表达式,该函数会返回所有满足条件的行。
下面我们来看一个例子。假设我们有一个如下的数据框:
import pandas as pd
df = pd.DataFrame({
'name': ['Alice', 'Bob', 'Charlie', 'David', 'Emma'],
'score': [80, 90, 70, 85, 95]
})
输出如下:
name score
0 Alice 80
1 Bob 90
2 Charlie 70
3 David 85
4 Emma 95
我们想筛选出所有分数大于等于 80 的同学,可以使用以下语句:
df.query('score >= 80')
输出结果:
name score
0 Alice 80
1 Bob 90
3 David 85
4 Emma 95
在上面的代码中,我们使用了字符串 'score >= 80'
作为参数传递给 query()
函数。这个字符串是一个条件表达式,它表示只选择分数大于等于 80 的行。
在条件表达式中,我们可以使用大于号(>
)、小于号(<
)、等于号(==
)、大于等于号(>=
)、小于等于号(<=
)等比较运算符,常用逻辑运算符还有与(&
)和或(|
)等。可以根据需求选择不同的运算符组合出不同的条件表达式。
总的来说,使用查询函数 query()
来根据列值过滤行,可以用上述代码作为基础,根据不同的条件表达式来灵活地控制选择行的条件。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:如何在Pandas中用查询函数根据列值过滤行 - Python技术站