dataframe使用groupby函数分组之后对于group视图中的数据更改,如何使用apply函数给原dataframe添加一列数据
时间: 2024-02-25 18:58:08 浏览: 75
pyspark给dataframe增加新的一列的实现示例
使用`apply`函数时,可以返回一个包含新列的dataframe,然后使用`join`函数将其与原dataframe合并。下面是一个示例代码:
```python
import pandas as pd
# 创建一个示例dataframe
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]
})
# 对A列进行分组,并对C列进行累加
grouped = df.groupby('A')
new_col = grouped['C'].apply(lambda x: x.sum())
# 将新列与原dataframe合并
df = df.join(new_col, on='A', rsuffix='_sum')
```
在上面的示例中,我们首先对dataframe按照'A'列进行分组,然后对'C'列进行累加,得到一个新的Series。接着,我们将这个Series转换成一个新的dataframe,并将其与原dataframe按照'A'列进行合并,得到一个包含新列的dataframe。最后,我们将这个新的dataframe重新赋值给原dataframe,即可将新列应用到原dataframe中。
阅读全文