我正在使用 pandas 来处理 csv 文件。如果连续出现一些重复值,我需要删除它们。 我知道有一个重复函数可以删除第二次重复的任何值,无论它们出现在哪里。 但只有当列的值重复超过 5 个连续行时,我才必须删除数据。 例如,
1
1
3
1
1
1
1
1
2
这里我不想删除B中顶部的两个1,而是只删除连续重复5次的1。 关于我应该如何解决这个问题有什么指示吗?
最佳答案
这应该可以做到:
>> df = pd.Series([1,1,3,1,1,1,1,1,2])
>> df.groupby((df.shift() != df).cumsum())\
.filter(lambda x: len(x) < 5)
0 1
1 1
2 3
8 2
关于python - 删除 Pandas DataFrame 中重复超过 5 次的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28109256/