簡體   English   中英

如果value中的a值等於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

在這里,我想基於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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM