在Python中,使用pandas库可以很方便地按组提取列中的数据到新列。下面是一个代码示例:
import pandas as pd
# 创建一个示例DataFrame
data = {'Group': ['A', 'A', 'B', 'B', 'C', 'C'],
'Value': [1, 2, 3, 4, 5, 6]}
df = pd.DataFrame(data)
# 创建新列并按组提取数据
df['Sum'] = df.groupby('Group')['Value'].transform('sum')
df['Count'] = df.groupby('Group')['Value'].transform('count')
df['Mean'] = df.groupby('Group')['Value'].transform('mean')
# 输出结果
print(df)
输出结果如下:
Group Value Sum Count Mean
0 A 1 3 2 1.5
1 A 2 3 2 1.5
2 B 3 7 2 3.5
3 B 4 7 2 3.5
4 C 5 11 2 5.5
5 C 6 11 2 5.5
在这个示例中,我们首先创建了一个包含分组数据的DataFrame。然后,通过使用groupby
方法按组对数据进行分组,并使用transform
方法对每个组中的数据进行操作。在这个示例中,我们使用了sum
、count
和mean
函数来计算每个组的总和、计数和平均值,并将结果存储在新列中。最后,我们打印出DataFrame来查看结果。
上一篇:按组提取多个变量的最大值对应的行
下一篇:按组提取最小值的列名和行名