如果 value 中的值等于 Python 中的上一行,则删除整行
Delete the entire row if the a value in value is equal to previous row in Python
我是 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 函数,因为值稍后会在列中重新出现。我想查看之前的值并删除它。
谁能帮我做这件事?
谢谢
如果你不想只是放弃欺骗:
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"]]
我是 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 函数,因为值稍后会在列中重新出现。我想查看之前的值并删除它。
谁能帮我做这件事?
谢谢
如果你不想只是放弃欺骗:
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"]]