要按组别创建新的时长列,可以使用groupby()
函数来对数据进行分组,然后使用transform()
函数将每个组的时长计算结果应用到原始数据的每一行。
下面是一个示例代码:
import pandas as pd
# 创建示例数据
data = {'组别': ['A', 'A', 'B', 'B', 'B', 'C'],
'时长': [10, 20, 15, 25, 30, 5]}
df = pd.DataFrame(data)
# 按组别分组,并计算每个组的平均时长
df['平均时长'] = df.groupby('组别')['时长'].transform('mean')
print(df)
输出结果:
组别 时长 平均时长
0 A 10 15
1 A 20 15
2 B 15 23.333333
3 B 25 23.333333
4 B 30 23.333333
5 C 5 5
在上面的代码中,首先创建了一个包含组别和时长的示例数据。然后使用groupby()
函数按组别进行分组,并使用transform('mean')
计算每个组的平均时长。最后,将计算结果赋值给新的列平均时长
。
你可以根据自己的需求来修改示例代码,例如计算其他统计量(如总和、最大值等),或者根据其他列的值来进行分组等。
上一篇:按组别统计的SQL总计数
下一篇:按组并创建转换后的JSON输出