Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Pandas 确定pd系列中的连续真值_Pandas_Boolean - Fatal编程技术网

Pandas 确定pd系列中的连续真值

Pandas 确定pd系列中的连续真值,pandas,boolean,Pandas,Boolean,我有一个布尔pd序列 S=pd.Series([True,False,True,True,False]) 我需要识别S中的块,它们至少是2个连续的真元素。 如果我这样做 然后我得到了正确的元素,但每个块都缺少一个元素。 相反,我想得到以下信息 pd.Series([False,False,True,True,False]) 因此,序列与原始序列大小相同,单个真替换为假首先通过与比较创建唯一的连续组,然后通过与或计数值: 或: 我已经接受了你的答案。但是我仍然有一个问题:当连续出现两个以上的

我有一个布尔pd序列

S=pd.Series([True,False,True,True,False])
我需要识别S中的块,它们至少是2个连续的真元素。 如果我这样做

然后我得到了正确的元素,但每个块都缺少一个元素。 相反,我想得到以下信息

pd.Series([False,False,True,True,False])

因此,
序列
与原始序列大小相同,单个
替换为

首先通过与比较创建唯一的连续组,然后通过与或计数值:

或:



我已经接受了你的答案。但是我仍然有一个问题:当连续出现两个以上的错误时,你的解决方案也会返回truevalues@00__00__00-然后将
>1
更改为
==2
,我想需要2个或更多,对不起。
pd.Series([False,False,True,True,False])
b = S.ne(S.shift()).cumsum()
c = b.map(b.value_counts()) == 2
c = b.groupby(b).transform('size') == 2
print (c)
0    False
1    False
2     True
3     True
4    False
dtype: bool