【问题标题】:How can I change logic from (False to True) based on the 1st column and (True to False) based on the 2nd culumn如何根据第一列将逻辑从(假到真)和基于第二列的逻辑(真到假)更改
【发布时间】:2023-02-10 11:37:30
【问题描述】:

这个想法是在由 2 列调节的 True 和 False 集合之间切换。

例如

Column A Column B Column C
False False False
False False False
True False True
False False True
True False True
True False True
True False True
False False True
False True False
False True False
False False False
False False False
False True False
True False True
False False True
False False True

我想生成的是“C 列”。

“A 列”将“C 列”从(“False”更改为“True”)。

“B 列”将“C 列”从(“True”更改为“False”)。

由第一个“真”触发

【问题讨论】:

    标签: python pandas dataframe numpy pandas-ta


    【解决方案1】:

    我终于通过使用 cumsum() 得到了这个问题的答案。

    df['Column A'] = ....
    df['Column B'] = ....
    
    df["Cumsum1"] = df['Column A'].cumsum()
    df["Cumsum2"] = df["Cumsum1"].where(df_ohlcv["Column B"]).ffill().fillna(0).astype(int)
    
    df_ohlcv["Column C"] = df_ohlcv["Cumsum1"]-df_ohlcv["Cumsum2"]
    df_ohlcv["Column C"] = df_ohlcv["Column C"].replace(df_ohlcv["Column C"].values, 1).where(df_ohlcv["Column C"]!=0, 0).astype(bool)
    

    如果有人有更简单的解决方案,请分享。谢谢

    【讨论】:

      猜你喜欢
      • 2023-01-08
      • 1970-01-01
      • 2010-09-18
      • 1970-01-01
      • 1970-01-01
      • 2016-01-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多