【发布时间】:2023-03-29 04:26:01
【问题描述】:
我在 pandas 中工作,并且有一个带有 TradeID、Seller ID 和 Payment date 的销售信息数据框,我想为每个 Seller ID 计算在当前交易日期之前之前成功交易的数量,卖家有过的。我相当确定这是一个拆分应用组合样式的解决方案,但我不知道如何实现它。
数据看起来有点像这样
|---------|-----------|-------------|------------|
|Trade ID | Seller ID | Payment Date|Success? |
|---------|-----------|-------------|------------|
|001 |001 |08/12/2016 |Yes |
|002 |001 |07/12/2016 |Yes |
|003 |001 |12/12/2016 |No |
|004 |001 |13/12/2016 |Yes |
|005 |001 |14/12/2016 |Null |
|005 |002 |18/01/2012 |Yes |
|006 |002 |01/01/2011 |Null |
|007 |003 |07/02/2010 |Yes |
我正在寻找类似的输出:
|---------|-----------|-------------|------------|--------------------------|
|Trade ID | Seller ID | Payment Date|Success? |Previous Succesful Trades |
|---------|-----------|-------------|------------|--------------------------|
|001 |001 |08/12/2016 |Yes |1 |
|002 |001 |07/12/2016 |Yes |0 |
|003 |001 |12/12/2016 |No |2 |
|004 |001 |13/12/2016 |Yes |2 |
|005 |001 |14/12/2016 |Null |3 |
|005 |002 |18/01/2012 |Yes |1 |
|006 |002 |01/01/2011 |Null |0 |
|007 |003 |07/02/2010 |Yes |0 |
我可以汇总每个卖家的成功交易,但这并没有考虑到卖家进行交易时他们还没有完成数据框中的所有交易的事实。例如,在 2016 年 12 月 12 日,卖家 1 将不会在 2016 年 12 月 13 日完成交易,因此他们之前成功完成的交易是 2 而不是 3。
非常感谢任何帮助!
【问题讨论】:
标签: python pandas filter group-by