[英]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
在這里,我想基於xxcount值刪除行。
我的輸出應該是
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"]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.