Python 3.x 如何仅在数据帧/列表中的元素和相等时对其进行分组?

Python 3.x 如何仅在数据帧/列表中的元素和相等时对其进行分组?,python-3.x,pandas,numpy,Python 3.x,Pandas,Numpy,如果元素在某一日期的买卖数量相同,并且忽略了剩余的元素,我希望将它们组合在一起,如下面的示例所示 数据集: 1/1/09 bought 100 AAPL 1/1/09 sold 100 AAPL 1/1/09 bought 35 AAPL 1/1/09 sold 35 AAPL 1/1/09 bought 105 AAPL 我希望生成的数据帧为: 1/1/09 bought 135 AAPL 1/1/09 sold 135 AAPL 1/1/09 bought 105 AAPL 只

如果元素在某一日期的买卖数量相同,并且忽略了剩余的元素,我希望将它们组合在一起,如下面的示例所示

数据集:

 1/1/09 bought 100 AAPL
 1/1/09 sold 100 AAPL
 1/1/09 bought 35 AAPL
 1/1/09 sold 35 AAPL
 1/1/09 bought 105 AAPL
我希望生成的数据帧为:

1/1/09 bought 135 AAPL
1/1/09 sold 135 AAPL
1/1/09 bought 105 AAPL
只需groupby和sum:

my_var = ['bought','sold','bought','sold','bought']
dollar = [100,100,35,35,105]
date = ['2009-01-01','2009-01-01','2009-01-01','2009-01-01','2009-01-01']
sku = ['AAPL','AAPL','AAPL','AAPL','AAPL']

df = pd.DataFrame({'status':pd.Series(my_var),'dollars':pd.Series(dollar),'date':pd.Series(date),'SKU':pd.Series(sku)})

df.groupby(['SKU','status','date'],as_index = False)['dollars'].sum()

谢谢你的回复。但问题是所有这些数量都在同一日期。用更精确的例子编辑了这个问题。谢谢。有没有一个原因可以解释为什么“购买”不能被汇总为一个变量?是的,我只想在“售出”(数量)=“购买”(数量)时合并。基本上是一些库存数据,“XXX”是SKU号吗?