我是python编程的新手,我需要一个帮助来根据数据框中单个列的值删除整行。如果单列中的值等于前一行值,我想删除该行。
以下是我的数据
x.id x.timestamp x.count
71 1 1435114605 61
72 1 1435114606 61
73 1 1435114659 61
74 1 1435114719 62
75 1 1435114726 62
76 1 1435114780 62
77 1 1435155998 62
78 1 1435156059 62
79 1 1435156076 62
80 1 1435156119 62
这里我想根据x.x.count值删除行。
我的输出应该是,
x.id x.timestamp x.count
71 1 1435114605 61
74 1 1435114719 62
我无法使用drop_duplicates函数,因为这些值将在稍后的列中重新执行。我想检查以前的值并将其删除。
有人可以帮我这么做吗?
由于
答案 0 :(得分:1)
如果你不想丢弃欺骗行为:
import pandas as pd
df = df.groupby((df["x.count"] != df["x.count"].shift()).cumsum().values).first()
或者:
df = df.loc[df["x.count"].shift() != df["x.count"]]