python 有条件groupby
时间: 2023-07-29 19:14:48 浏览: 62
在 Python 中,可以使用 pandas 库来实现条件 groupby。具体步骤如下:
1. 导入 pandas 库
```python
import pandas as pd
```
2. 创建一个 DataFrame
```python
df = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar',
'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'three',
'two', 'two', 'one', 'three'],
'C': [1, 2, 3, 4, 5, 6, 7, 8],
'D': [10, 20, 30, 40, 50, 60, 70, 80]})
```
3. 使用 groupby 函数,并传入一个条件
```python
grouped = df.groupby(df['A'].str.contains('foo'))
```
上述代码将 DataFrame 按照 A 列是否包含 'foo' 条件进行分组。
4. 对分组后的数据进行操作
例如,可以计算分组后的均值:
```python
grouped.mean()
```
输出结果为:
```
C D
A
False 3.666667 40.0
True 4.833333 40.0
```
上述结果就是按照 A 列是否包含 'foo' 条件分组后,对 C 列和 D 列进行均值计算后的结果。
阅读全文