繁体   English   中英

python pandas:删除每个单独部分中的重复行

[英]python pandas: remove duplicates row in each seperate section

我有一个如下所示的数据框:

A B
a T
b T
c F
d F
e F
f T
g T

我想保留每个部分的最后一个事件

应该变成这样:

A B
b T
e F    
g T

使用:

df[df.B.ne(df.B.shift(-1))]

   A  B
1  b  T
4  e  F
6  g  T

详细信息 - 使用df.shift()periods= -1将在上面的示例中移动第一列:

print(df.B.shift(-1)) 

0      T
1      F
2      F
3      F
4      T
5      T
6    NaN

使用上面的输出,我们与当前行进行比较:

df.B.ne(df.B.shift(-1))
0    False
1     True
2    False
3    False
4     True
5    False
6     True

现在我们有一个布尔输出,我们可以直接调用数据帧,它将选择所有True索引。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM