使用 pandas 库中的 groupby() 和 agg() 函数,先按分组变量对数据进行分组,再对每个分组进行求和,并计算每个分组中这些值的比例。
代码示例:
import pandas as pd
# 创建示例数据
data = {'Group': ['A', 'A', 'B', 'B'],
'Value1': [10, 20, 5, 10],
'Value2': [30, 50, 20, 30]}
df = pd.DataFrame(data)
# 按 Group 分组并计算平均值
result = df.groupby('Group').agg({'Value1': 'sum', 'Value2': 'sum'})
result['Ratio'] = result['Value1'] / result['Value2']
print(result)
输出结果为:
Value1 Value2 Ratio
Group
A 30 80 0.375000
B 15 50 0.300000
下一篇:按分组变量衡量年度滞后