每次满足另一列中的条件时,我都试图将cumsum重置为零。以下是我的数据框的外观:
ticker cashflow op shares profit
CPFE3.SA -220.06 Buy 8 0
CPFE3.SA 249.93 Sell 0 29.87
CPFE3.SA -90.03 Buy 3 0
CPFE3.SA -575.87 Buy 22 0
CPFE3.SA -92.12 Buy 25 0
CPFE3.SA 763.52 Sell 0 35.37
DIS -921.46 Buy 1 0
我使用以下内容创建利润列:
df['profit'] = df.groupby(df.ticker)['cashflow'].cumsum().where(df.op=='Sell',0)
股票是指我在买入/卖出后持有的股票数量。利润就是我想做一些与众不同的事情。如何在每次遇到“共享”列中的0时重置累积和?我试过一些东西,但我很烂
我要寻找的结果如下所示:
ticker cashflow op shares profit
CPFE3.SA -220.06 Buy 8 0
CPFE3.SA 249.93 Sell 0 29.87
CPFE3.SA -90.03 Buy 3 0
CPFE3.SA -575.87 Buy 22 0
CPFE3.SA -92.12 Buy 25 0
CPFE3.SA 763.52 Sell 0 5.5
DIS -921.46 Buy 1 0
提前谢谢,如果我能提供更多信息,请告诉我
可以使用
cumsum
检测块:相关问题 更多 >
编程相关推荐