假设我有一个 Dataframe ,df
如下,它有一个'Value'列,我也想应用一些布尔分析。
date Value
10/11 0.798
11/11 1.235
12/11 0.890
13/11 0.756
14/11 0.501
...
实际上,我希望创建一个新列,当值大于1时,该列切换到TRUE
,并且在值低于0.75时保持为真。例如,使用df
时,该列将如下所示:
column
FALSE
TRUE
TRUE
TRUE
FALSE
我正在努力寻找一种合适的方法来引用我正在定义的列的前一个值,而不会遇到一些错误。我想使用的逻辑如下:df['column'] = (df['value'] >= 1) | ((df['column'].shift(1) == True) & (df['value'] >= 0.75))
有没有一种方法,我可以实现这一点,而不过于复杂的事情?
2条答案
按热度按时间ffx8fchx1#
可能的解决方案:
输出量:
hgncfbus2#
实际上,使用apply调用函数可能会有所帮助,因为它具有一些“记忆”逻辑。