熊猫在一列中添加值,另一列中所有相同的值

时间:2019-10-17 23:30:20

标签: python pandas

我在先前的文章中找到了两个相同问题的示例,但是都没有解决Python和熊猫的情况。我是python的新手,我在挣扎。在更新本文之前,我已经取得了巨大的进步,我非常亲密。

我正在尝试汇总“日期”列中所有相同日期的“数量”中的值。当前,它们在那里,但它们没有加在一起,此外,我试图获取最后一列的值以构成一个列表。

这是我的代码以及表的外观:

df = pd.DataFrame( {'Date': ['01-01-2018', '01-01-2018','02-01-2018','03-01-2018','03-01-2018'], 'Quantity' : ['4','5','6','2','8'], 'Id':['5674','565','67433','2353','579']})


data = df.groupby(['Date','Quantity'])
result = data['Id'].unique()

print(result)

结果是:

Date        Quantity
01-01-2018  4            [5674]
            5             [565]
02-01-2018  6           [67433]
03-01-2018  2            [2353]
            8             [579]

结果与我想要的不匹配,我不确定为什么!我很感谢有关如何进行的任何提示。谢谢!

1 个答案:

答案 0 :(得分:1)

Data分组并应用以下汇总函数

  • Quantity列:总和
  • Id列:列表
df.groupby(['Date']).agg({'Quantity': sum, 'Id': list}).reset_index()

输出

    Date        Quantity    Id
0   01-01-2018  45          [5674, 565]
1   02-01-2018  6           [67433]
2   03-01-2018  28          [2353, 579]