I have two dataframes; orders and returns.
Orders:
Index | OrderID |TransactionID | ProductID | BuyerID | Date | TotalOrder | ProductPrice
-----------------------------------------------------------------------------------------------
0 | A | A-1 | 05 | 1 | dd-mm-yyy | 140 | 50
1 | A | A-2 | 45 | 1 | dd-mm-yyy | 140 | 90
2 | B | B-1 | 33 | 1 | dd-mm-yyy | 15 | 10
3 | B | B-2 | 01 | 1 | dd-mm-yyy | 15 | 5
4 | C | C-1 | 45 | 1 | dd-mm-yyy | 90 | 90
5 | D | D-1 | 45 | 1 | dd-mm-yyy | 90 | 90
6 | E | E-1 | 45 | 1 | dd-mm-yyy | 90 | 90
7 | F | F-1 | 45 | 2 | dd-mm-yyy | 90 | 90
Returns:
ProductID | BuyerID | ProductPrice | Amount
------------------------------------------------------------------------------------------------
33 | 1 | 10 | 1
45 | 1 | 90 | 2
01 | 1 | 5 | 1
For every row in returns, a row with a matching ProductID, BuyerID and ProductPrice in orders should be removed n (= returns['Amount']
) times. So I'll end up with only the rows with index 0, 7 and two of either 1, 4, 5 or 6.
Index | OrderID |TransactionID | ProductID | BuyerID | Date | TotalOrder | ProductPrice
------------------------------------------------------------------------------------------------
0 | A | A-1 | 05 | 1 | dd-mm-yyy | 140 | 50
7 | F | F-1 | 45 | 2 | dd-mm-yyy | 90 | 90
-----------------------------------------------------------------------------------------
| 1 | A | A-2 | 45 | 1 | dd-mm-yyy | 140 | 90 |
| 4 | C | C-1 | 45 | 1 | dd-mm-yyy | 90 | 90 |+ 2 out
| 5 | D | D-1 | 45 | 1 | dd-mm-yyy | 90 | 90 |of these
| 6 | E | E-1 | 45 | 1 | dd-mm-yyy | 90 | 90 |
-----------------------------------------------------------------------------------------
Is there any way I can do this?