我需要按类别进行分类,而无需混合不同列的数据

时间:2019-02-18 12:30:05

标签: r function classification aggregate categories

我有以下数据集:

Year Company Product Sales
2017  X       A       10
2017  Y       A       20
2017  Z       B       20 
2017  X       B       10
2018  X       B       20
2018  Y       B       30
2018  X       A       10 
2018  Z       A       10

我想获得以下摘要:

Year Product Sales
2017 A       30
     B       30
2018 A       50 
     B       20

以及以下摘要:

Year Company Sales
2017  X      20
      Y      20 
      Z      20
2018  X      50
      Y      10 
      Z      10

有没有不用循环的方法吗?

我知道我可以使用函数汇总来做一些事情,但是我不知道如何在不混合公司,产品和年份数据的情况下进行操作。例如,我得到了产品A和B的总销售额,但它混合了这两年的销售额,而不是在2017年给出A和B,而在2018年分离了。

您有什么建议吗?

1 个答案:

答案 0 :(得分:0)

假设您的数据帧称为df:

df1 = df.groupby('Year', 'Product')['Sales'].sum()
df2 = df.groupby('Year', 'Company')['Sales'].sum()

我相信这将帮助您创建两个摘要数据框,而不会混合任何内容:)!