在pandas中,`query()`函数用于从DataFrame中筛选出满足指定条件的行。它接受一个字符串作为参数,该字符串表示查询条件。下面是`query()`函数的使用方法和示例:使用方法:
DataFrame.query(expr, inplace=False, **kwargs)
参数说明:
- `expr`:表示查询条件的字符串表达式。
- `inplace`:一个布尔值,表示是否在原始DataFrame上进行就地修改,默认为False。
- `**kwargs`:其他可选参数,用于传递给查询表达式中使用的变量。
示例:
import pandas as pd
# 创建一个示例DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'Salary': [50000, 60000, 70000, 80000]}
df = pd.DataFrame(data)
# 使用query()函数筛选出Age大于等于30的行
result = df.query('Age >= 30')
print(result)
```
输出结果:
```
Name Age Salary
1 Bob 30 60000
2 Charlie 35 70000
3 David 40 80000
```
注意:
在查询表达式中,可以使用列名来引用DataFrame中的列,也可以使用Python的运算符和函数来构建复杂的查询条件。例如,可以使用`and`、`or`、`not`等逻辑运算符,也可以使用`==`、`!=`、`>`、`<`等比较运算符,以及`isin()`、`startswith()`等字符串函数。
需要注意的是,查询表达式中的字符串要用单引号或双引号括起来,以表示字符串字面值。
总而言之,`query()`函数提供了一种方便且灵活的方式来筛选和过滤DataFrame中的数据。