要按组创建基于特定行和特定列的新变量,可以使用Pandas库来解决。以下是一个示例代码:
import pandas as pd
# 创建一个示例数据帧
df = pd.DataFrame({'组别': ['A', 'A', 'B', 'B', 'C', 'C'],
'行号': [1, 2, 1, 2, 1, 2],
'特定列': [10, 20, 30, 40, 50, 60]})
# 按组计算新变量
df['新变量'] = df.groupby('组别')['特定列'].transform('sum')
print(df)
输出结果如下:
组别 行号 特定列 新变量
0 A 1 10 30
1 A 2 20 30
2 B 1 30 70
3 B 2 40 70
4 C 1 50 110
5 C 2 60 110
在这个示例中,我们创建了一个包含组别、行号和特定列的数据帧。然后,我们使用groupby
函数按组别对数据进行分组,并使用transform
函数计算每个组别的特定列的总和。最后,我们将计算结果赋值给一个新的列“新变量”。这样,我们就成功地按组创建了基于特定行和特定列的新变量。
下一篇:按组创建每个组的列