如何将 groupby 与原始数据框合并?
How to merge groupby with original dataframe ??
我有一个包含 32 列的数据框,类似这样的东西:
company_id Price Date others columns
10 258.33 2021-08-01 ...
11 300.00 2022-01-01 ...
12 760.82 2021-11-01 ...
我想按公司和月份分组:
df.groupby(['company_id', 'Date']).sum()
这工作得很好,但如何将输出与我上面的初始数据框合并?就像所有的行一样。会有双胞胎,不过没关系。
IUUC,你要的是groupby和transform
out = (df.groupby(['company_id', 'Date'])
.transform(sum)
.rename(columns=lambda col: f'{col}_sum'))
out = df.join(out)
print(out)
company_id Price Date Price_sum
0 10 258.33 2021-08-01 258.33
1 11 300.00 2022-01-01 300.00
2 12 760.82 2021-11-01 760.82
我有一个包含 32 列的数据框,类似这样的东西:
company_id Price Date others columns
10 258.33 2021-08-01 ...
11 300.00 2022-01-01 ...
12 760.82 2021-11-01 ...
我想按公司和月份分组:
df.groupby(['company_id', 'Date']).sum()
这工作得很好,但如何将输出与我上面的初始数据框合并?就像所有的行一样。会有双胞胎,不过没关系。
IUUC,你要的是groupby和transform
out = (df.groupby(['company_id', 'Date'])
.transform(sum)
.rename(columns=lambda col: f'{col}_sum'))
out = df.join(out)
print(out)
company_id Price Date Price_sum
0 10 258.33 2021-08-01 258.33
1 11 300.00 2022-01-01 300.00
2 12 760.82 2021-11-01 760.82