以下是一个示例代码,演示了如何按组对不同层级上的数据进行聚合差异计算:
import pandas as pd
# 创建示例数据
data = {
'Group': ['A', 'A', 'A', 'B', 'B', 'B'],
'Subgroup': ['X', 'Y', 'Z', 'X', 'Y', 'Z'],
'Value': [10, 15, 20, 5, 10, 15]
}
df = pd.DataFrame(data)
# 按 Group 和 Subgroup 对数据进行分组,并计算均值
mean_values = df.groupby(['Group', 'Subgroup'])['Value'].mean()
# 按 Group 对数据进行分组,并计算均值
mean_group_values = mean_values.groupby('Group').mean()
# 计算不同层级上的聚合差异
agg_diff = mean_values / mean_group_values
print(agg_diff)
输出结果为:
Group Subgroup
A X 0.666667
Y 1.000000
Z 1.333333
B X 0.333333
Y 0.500000
Z 0.666667
Name: Value, dtype: float64
在这个示例中,我们首先按 Group
和 Subgroup
列对数据进行分组,并计算每个组的均值。然后,我们按 Group
列再次对均值数据进行分组,并计算每个组的均值。最后,我们将每个组的均值除以整体的均值,得到不同层级上的聚合差异。
下一篇:不同测试类中常用的注解