Pandas DataFrame-删除特定列中与上一行具有相同值的行

尤戈维奇男爵

我有一个熊猫数据框,我想检查每一行在特定列上是否具有相同的值(我们称其为porduct_type),如果有,则将其删除。换句话说,在特定列的一组具有相同值的连续行中,我只想保留一个。

例如,如果列A是我们不希望连续重复的列:

input =  
A    B

    0  1    1
    0  2    2
    2  1   10
    2  2   20
    0  11  100
    5  2  200

output =  
A    B

    0  1    1
    2  1   10
    0  11  100
    5  2  200
帝斯曼

这有点棘手,但您可以做类似的事情

>>> df.groupby((df["A"] != df["A"].shift()).cumsum().values).first()
   A   B    C
1  0   1    1
2  2   1   10
3  0  11  100
4  5   2  200

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

比较Pandas DataFrame中的上一行值

如何在Pandas DATAFRAME中查找具有特定数据类型的列值的行

Pandas Dataframe删除具有特定值的行,直到该值更改

删除Pandas中的DataFrame行,其中列值在列表中

Pandas DataFrame:在两个特定的列中获取具有相同值对的行

如果该列中有任何列包含某个值,则在Pandas Dataframe中删除一行

Pandas Dataframe-在特定行中选择具有特定值的列

将相同的列表添加到新列的pandas DataFrame中的每一行

如何在最后一行中以零值删除Pandas DataFrame列

检查pandas DataFrame中的两行是否具有相同的一组值,无论列顺序如何

如何基于在特定列中搜索数据来在Pandas Dataframe中选择一行

在Pandas DataFrame的每一行中添加具有最受欢迎字符串值的新列

删除行中的值,Pandas DataFrame

如何将Pandas DataFrame中的值与上一行和上一列中的值进行比较?

如何在Python Pandas DataFrame中的任何行具有NaN值后删除列

Python DataFrame:在其他列中具有相同值的特定值之前找到上一行的值

删除列值<0的Pandas DataFrame行

Python pandas DataFrame-将具有相同信息的行保留在3列中

在一行上删除 Pandas DataFrame 中的多列

根据上一行中具有特定条件的列之一的值创建新行 - pandas 或 numpy

pandas:如果组的最后一行具有特定的列值,如何删除组的所有行

从 Dataframe 中删除行上方或下方在特定列中具有相同值的行

从 Pandas Dataframe 中选择一列中具有相同值而另一列中仅丢失的行

Pandas DataFrame:添加具有基于前一行计算值的新列

Pandas Dataframe:将具有相同列值的多行移动到新的特定行中

比较不同列中 Pandas DataFrame 中的前一行值

Pandas - 如果另一行具有相同的值但列被切换,则删除行

删除Dataframe列中具有相同值的行

Pandas Dataframe 根据一列中的唯一值复制具有平均值的行,以便每个唯一值具有相同的行数