布尔值从false切换为true的日期列表

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了布尔值从false切换为true的日期列表相关的知识,希望对你有一定的参考价值。

我有以下数据框:

    High    Low Open    Close   Volume  Adj Close   bcc
Date                            
2018-01-02  2695.889893 2682.360107 2683.729980 2695.810059 3367250000  2695.810059 False
2018-01-03  2714.370117 2697.770020 2697.850098 2713.060059 3538660000  2713.060059 False
2018-01-04  2729.290039 2719.070068 2719.310059 2723.989990 3695260000  2723.989990 False
2018-01-05  2743.449951 2727.919922 2731.330078 2743.149902 3236620000  2743.149902 False
2018-01-08  2748.510010 2737.600098 2742.669922 2747.709961 3242650000  2747.709961 True
... ... ... ... ... ... ... ...
2020-04-13  2782.459961 2721.169922 2782.459961 2761.629883 5274310000  2761.629883 False
2020-04-14  2851.850098 2805.100098 2805.100098 2846.060059 5567400000  2846.060059 False
2020-04-15  2801.879883 2761.540039 2795.639893 2783.360107 5203390000  2783.360107 False
2020-04-16  2806.510010 2764.320068 2799.340088 2799.550049 5179990000  2799.550049 False
2020-04-17  2879.219971 2830.879883 2842.429932 2874.560059 5792140000  2874.560059 False
577 rows × 7 column

我如何获取日期列表,其中在bcc布尔False列中切换为True。例如,在我上面提出的data中,您可以在2018-1-08上看到False toggled to True`的日期。

答案

用途:

df2 = df[(~df['bcc']) & df['bcc'].shift(-1, fill_value=False)]

print (df2)
                   High          Low         Open        Close      Volume  
Date                                                                         
2018-01-05  2743.449951  2727.919922  2731.330078  2743.149902  3236620000   

              Adj Close    bcc  
Date                            
2018-01-05  2743.149902  False  

以上是关于布尔值从false切换为true的日期列表的主要内容,如果未能解决你的问题,请参考以下文章

将 Mathematica 值列表转换为布尔列表

如何在 Python 中切换布尔数组?

JS:将布尔列表转换为紧凑字符串?

如何替换布尔列表序列中的值?

列表上的 Python 布尔运算 - 结果不一致

计算 Python 列表中真正布尔值的数量