数据框删除连续重复的行,各列内容相同

马克·K

当“人”,“年”和“项目”相同时,下面的数据框和我要删除连续的重复行。

如果原始数据帧如下所示,则连续时具有相同“ People”,“ Year”,“ Project”的行将被删除。

data = {'People' : ["David","David","David","David","John","John","John"],
'Year': ["2016","2016","2017","2016","2016","2017","2017",],
'Project' : ["TN","TN","TN","TN","DJ","DM","DM"],
'Earning' : [878,682,767,620,964,610,772]}

我尝试了这个,但是不起作用:

df_1 = df.loc[(df['People', 'Year', 'Project'].shift() != df['People', 'Year', 'Project'])]

尝试-此行删除了非连续的“ David,2016,TN,620”

df_1 = df.drop_duplicates(subset=['People','Year','Project'])

在此处输入图片说明

更改为此后,它将保留所有行:

df_1 = df.drop_duplicates(subset=['People','Year','Project', 'Earning'])

什么是正确的方法?谢谢!

耶斯列尔

你可以比较DataFrame.shift主编值不相等,然后测试至少一个True每行DataFrame.anyboolean indexing

cols = ['People','Year','Project']
df_1 = df[df[cols].ne(df[cols].shift()).any(axis=1)]
print (df_1)
  People  Year Project  Earning
0  David  2016      TN      878
2  David  2017      TN      767
3  David  2016      TN      620
4   John  2016      DJ      964
5   John  2017      DM      610

详细资料

print (df[cols].ne(df[cols].shift()))
   People   Year  Project
0    True   True     True
1   False  False    False
2   False   True    False
3   False   True    False
4    True  False     True
5   False   True     True
6   False  False    False

print (df[cols].ne(df[cols].shift()).any(axis=1))
0     True
1    False
2     True
3     True
4     True
5     True
6    False
dtype: bool

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

如何基于具有连续相同值的列事件删除数据框中的行

来自分类Dev

如何基于具有连续相同值的列事件删除数据框中的行

来自分类Dev

从pyspark数据框中删除具有相同值但在不同列中的重复行

来自分类Dev

重复后的数据框总和连续列

来自分类Dev

熊猫数据框按多列分组并删除重复的行

来自分类Dev

删除仅对数据框的某些列重复的行

来自分类Dev

熊猫数据框按多列分组并删除重复的行

来自分类Dev

删除具有多列的数据框中的重复行

来自分类Dev

删除连续的重复行,仅重复2列

来自分类Dev

Python / Pandas-根据数据框中以下条件删除行(类似于删除重复项,但不相同)

来自分类Dev

sql:如何删除重复的行(内容相同,但是顺序不同)

来自分类Dev

删除连续的重复行bigquery

来自分类Dev

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

来自分类Dev

如何从数据框中删除重复的列和最后5行

来自分类Dev

删除数据框(R)所有列中具有重复值的行

来自分类Dev

从数据框中删除包含跨列重复信息的行

来自分类Dev

连接两个数据框并根据列值删除重复的行

来自分类Dev

根据具有列表值的多列删除数据框中的重复行

来自分类Dev

如何从数据框中删除重复的列和最后5行

来自分类Dev

根据列中的字符值删除数据框中的重复行之一

来自分类Dev

R:删除数据框中重复的行,该数据框中的第二列包含一个值

来自分类Dev

从pandas数据框中删除重复的行,其中只有一部分是相同的

来自分类Dev

删除数据框中在多列中具有相同值的行

来自分类Dev

熊猫数据框删除具有相同值的数据行

来自分类Dev

删除具有相同列数据的行

来自分类Dev

删除具有相同列数据的行

来自分类Dev

从R中的数据框中删除重复的行

来自分类Dev

R从数据框中删除未重复的行

来自分类Dev

从R中的数据框中删除重复的行

Related 相关文章

  1. 1

    如何基于具有连续相同值的列事件删除数据框中的行

  2. 2

    如何基于具有连续相同值的列事件删除数据框中的行

  3. 3

    从pyspark数据框中删除具有相同值但在不同列中的重复行

  4. 4

    重复后的数据框总和连续列

  5. 5

    熊猫数据框按多列分组并删除重复的行

  6. 6

    删除仅对数据框的某些列重复的行

  7. 7

    熊猫数据框按多列分组并删除重复的行

  8. 8

    删除具有多列的数据框中的重复行

  9. 9

    删除连续的重复行,仅重复2列

  10. 10

    Python / Pandas-根据数据框中以下条件删除行(类似于删除重复项,但不相同)

  11. 11

    sql:如何删除重复的行(内容相同,但是顺序不同)

  12. 12

    删除连续的重复行bigquery

  13. 13

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

  14. 14

    如何从数据框中删除重复的列和最后5行

  15. 15

    删除数据框(R)所有列中具有重复值的行

  16. 16

    从数据框中删除包含跨列重复信息的行

  17. 17

    连接两个数据框并根据列值删除重复的行

  18. 18

    根据具有列表值的多列删除数据框中的重复行

  19. 19

    如何从数据框中删除重复的列和最后5行

  20. 20

    根据列中的字符值删除数据框中的重复行之一

  21. 21

    R:删除数据框中重复的行,该数据框中的第二列包含一个值

  22. 22

    从pandas数据框中删除重复的行,其中只有一部分是相同的

  23. 23

    删除数据框中在多列中具有相同值的行

  24. 24

    熊猫数据框删除具有相同值的数据行

  25. 25

    删除具有相同列数据的行

  26. 26

    删除具有相同列数据的行

  27. 27

    从R中的数据框中删除重复的行

  28. 28

    R从数据框中删除未重复的行

  29. 29

    从R中的数据框中删除重复的行

热门标签

归档