gpt4 book ai didi

python - 如何根据先前的状态在 Pandas 数据框中创建列?

转载 作者:行者123 更新时间:2023-11-28 21:37:52 24 4
gpt4 key购买 nike

我有一个带有时间序列索引的 pandas Dataframe。一列包含买入信号,另一列包含卖出信号。

buy     0 0 1 0 1 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0 
sell 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0

我想给这个简单的模型添加一个状态:任何时候最多有1只股票:只有当你目前什么都没有时才买入,当你有股票时才卖出。

buy     0 0 1 0 1 1 0 1 1 1 0 1 0 0 0 0 0 0 0 0 
sell 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 0
wallet 0 0 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0

我如何根据 df['buy']df['sell'] 创建 df['wallet'] 列>?

最佳答案

这不是最漂亮的解决方案,但我相信它可以满足您的需求。

import pandas as pd

df = pd.DataFrame({ 'buy': [0,0,0,1,0,1,1,1,1,1,0,0,0,0,0,0],
'sell': [0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1] })


df['wallet'] = pd.np.where(df['buy'] - df['sell'] < 0, 0, df['buy'].cumsum().count() - df['sell'].cumsum())
df.loc[df['wallet'] > 1, 'wallet'] = 1

关于python - 如何根据先前的状态在 Pandas 数据框中创建列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48851964/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com