首页 > 解决方案 > 通过检查连续元素对数据框进行切片

问题描述

我有一个按时间索引的 DF,它的一列(带有 2 个变量)就像 [x,x,y,y,x,x,x,y,y,y,y,x]。我想切片这个 DF,所以我会得到没有相同连续变量的列 - 在这个例子中:[x,y,x,y,x] 并且每个变量都是他的子序列中的第一个。

还在努力想办法...

谢谢!!

标签: pythonpandasdataframe

解决方案


假设你有 df 如下

df=pd.DataFrame(['x','x','y','y','x','x','x','y','y','y','y','x'])

我们shift用来查找下一个是否等于当前

df[df[0].shift()!=df[0]]
Out[142]: 
    0
0   x
2   y
4   x
7   y
11  x

推荐阅读