pandas按条件筛选
时间: 2023-09-15 20:23:10 浏览: 143
Pandas 是 Python 中非常流行的数据分析库,它提供了许多强大的数据处理和分析工具,包括数据筛选功能。下面是一些 Pandas 筛选数据的方法。
假设我们有一个名为 `df` 的 Pandas DataFrame,其中包含以下数据:
``` python
import pandas as pd
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Emily'],
'Age': [25, 30, 35, 40, 45],
'Gender': ['F', 'M', 'M', 'M', 'F'],
'Salary': [5000, 6000, 7000, 8000, 9000]}
df = pd.DataFrame(data)
```
接下来,我们将演示如何根据不同条件筛选数据。
#### 1. 按列筛选
我们可以使用 DataFrame 的列名来选择特定列。例如,要选择 `Name` 和 `Age` 列,可以使用以下方法:
``` python
df[['Name', 'Age']]
```
#### 2. 按行筛选
我们可以使用 DataFrame 的 `iloc` 属性按行索引来选择特定行。例如,要选择前两行,可以使用以下方法:
``` python
df.iloc[:2]
```
我们也可以使用 `loc` 属性按标签索引来选择特定行。例如,要选择 `Name` 列中包含 `'a'` 的行,可以使用以下方法:
``` python
df.loc[df['Name'].str.contains('a')]
```
#### 3. 按条件筛选
我们可以使用布尔表达式来选择符合特定条件的行。例如,要选择 `Salary` 列中大于 `6000` 的行,可以使用以下方法:
``` python
df[df['Salary'] > 6000]
```
我们也可以使用多个条件组合进行筛选。例如,要选择 `Gender` 列为 `'M'` 且 `Salary` 列大于 `6000` 的行,可以使用以下方法:
``` python
df[(df['Gender'] == 'M') & (df['Salary'] > 6000)]
```
这些是 Pandas 筛选数据的基本方法,你可以根据需要进行组合使用。
阅读全文