gpt4 book ai didi

python - 将数据框的列值聚合到新数据框

转载 作者:太空宇宙 更新时间:2023-11-04 00:09:21 25 4
gpt4 key购买 nike

我有一个数据框,其中涉及供应商、产品、市场上各种 list 的价格以及其他列值。

Dataframe

我需要一个数据框,其中包含唯一的供应商、产品数量、他们的产品列表总和、平均价格/产品和(平均 * 销售数量)作为不同的列。

像这样的——

Result

制作这个新数据框的最佳方法是什么?

谢谢!

最佳答案

首先使用Number of SalesPrice 多列,然后使用DataFrameGroupBy.agg通过具有聚合函数的列名字典,然后通过 maprename 将列中的 MultiIndex 展平。 :

df['Number of Sales'] *=  df['Price']

d1 = {'Product':'size', 'Price':['sum', 'mean'], 'Number of Sales':'mean'}
df = df.groupby('Vendor').agg(d1)
df.columns = df.columns.map('_'.join)
d = {'Product_size':'No. of Product',
'Price_sum':'Sum of Prices',
'Price_mean':'Mean of Prices',
'Number of Sales_mean':'H Factor'
}
df = df.rename(columns=d).reset_index()
print (df)
Vendor No. of Product Sum of Prices Mean of Prices H Factor
0 A 4 121 30.25 6050.0
1 B 1 12 12.00 1440.0
2 C 2 47 23.50 587.5
3 H 1 45 45.00 9000.0

关于python - 将数据框的列值聚合到新数据框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53044875/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com