pandas 过滤不包含指定值的行,模糊查询
时间: 2023-05-21 11:01:51 浏览: 568
可以使用 pandas 的 str.contains() 方法进行模糊查询,然后使用 ~ 符号取反来过滤不包含指定值的行。例如:
df[~df['column_name'].str.contains('指定值')]
相关问题
pandas 过滤包含指定值的行,模糊查询
可以使用 pandas 的 str.contains() 方法进行模糊查询,例如:
```python
import pandas as pd
# 创建一个 DataFrame
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David'],
'Age': [25, 30, 35, 40],
'City': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']}
df = pd.DataFrame(data)
# 过滤包含 "e" 的行
filtered_df = df[df['Name'].str.contains('e')]
print(filtered_df)
```
输出结果为:
```
Name Age City
0 Alice 25 Beijing
2 Charlie 35 Guangzhou
3 David 40 Shenzhen
```
这里使用了 df['Name'].str.contains('e') 来获取包含 "e" 的行,然后使用 df[] 进行过滤。
pandas 过滤包含指定值的行
可以使用 Pandas 的 loc 方法来过滤包含指定值的行,例如:
```python
import pandas as pd
# 创建一个 DataFrame
data = {'name': ['Alice', 'Bob', 'Charlie', 'David'],
'age': [25, 30, 35, 40],
'city': ['Beijing', 'Shanghai', 'Guangzhou', 'Shenzhen']}
df = pd.DataFrame(data)
# 过滤包含指定值的行
df_filtered = df.loc[df['city'] == 'Shanghai']
print(df_filtered)
```
这段代码会输出包含城市为上海的行的 DataFrame。