写一段python代码,对于DF,对K列groupby,对A列求和生成字段a1,对B列计数生成字段b1,并生成字段C=A1/B1
时间: 2023-10-03 11:04:39 浏览: 81
以下是对于DF,对K列groupby,对A列求和生成字段a1,对B列计数生成字段b1,并生成字段C=A1/B1的Python代码:
```python
import pandas as pd
# 创建一个示例数据集
data = {'K': ['A', 'A', 'B', 'B', 'B'], 'A': [1, 2, 3, 4, 5], 'B': [1, 2, 3, 4, 5]}
df = pd.DataFrame(data)
# 对于K列groupby,对A列求和生成字段a1,对B列计数生成字段b1
df_grouped = df.groupby('K').agg({'A': 'sum', 'B': 'count'}).reset_index()
df_grouped = df_grouped.rename(columns={'A': 'a1', 'B': 'b1'})
# 生成字段C=A1/B1
df_grouped['C'] = df_grouped['a1'] / df_grouped['b1']
print(df_grouped)
```
输出结果为:
```
K a1 b1 C
0 A 3 2 1.5
1 B 12 3 4.0
```
相关问题
写一段python代码,对于DF,对A列求和生成字段a1,对B列计数生成字段b1,并生成字段C=A1/B1
假设数据框名为df,代码如下:
```python
# 对A列求和生成字段a1
a1 = df['A'].sum()
# 对B列计数生成字段b1
b1 = df['B'].count()
# 生成字段C=A1/B1
C = a1 / b1
# 输出结果
print("a1: ", a1)
print("b1: ", b1)
print("C: ", C)
```
需要注意的是,如果B列中存在缺失值,那么计数的结果也会包含缺失值。如果需要排除缺失值,可以使用`df['B'].dropna().count()`来计算。另外,生成的结果可以根据实际情况进行保留小数位数的处理。
阅读全文