无法使用熊猫从.csv列中删除重复项

时间:2019-06-11 23:08:36

标签: python python-3.x pandas

我正在尝试对包含地址的.csv做一些非常简单的事情。我想使用熊猫函数drop_duplicates()删除任何行,如果它们的单数列(['Addresses'])中包含重复值。

每当我尝试使用drop_duplicates()并将数据帧打印或保存到新的.csv时,重复的行/值仍然存在。


data = pandas.read_csv(r"C:\Users\markbrd\Desktop\PalmAveAddresses.csv",
encoding = "ISO-8859-1")

data.drop_duplicates(subset=['Addresses'], keep='first')

print(data['Addresses'])

结果:

0             4834Via Estrella
1             5244Via Patricia
2        11721HIDDEN VALLEY RD
3                  30GARDEN CT
4      1999Fremont Blvd. Bldg.
5          8316Fountainhead Ct
6          8312Fountainhead Ct
7               1013Adella Ave
8               1005Adella Ave
9                 1520Tenth St
10                1536Tenth St

                ...           

607              847Florida St
608                 81212th St
609                 81212th St
610                 81212th St
611                 81212th St
612                 81212th St
613                 81212th St
614                 81212th St
615                 81212th St
616                 81212th St
617                 81212th St
618                 81212th St
619                 81212th St

如您所见,仍然有几行包含“地址”中的重复项(请参阅第609-619行)。任何帮助将不胜感激!

2 个答案:

答案 0 :(得分:1)

DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)

返回删除了重复行的DataFrame,可以选择仅考虑某些列

参数: 子集:列标签或标签序列,可选

仅考虑某些列来标识重复项,默认情况下使用所有列

保持:{'first','last',False},默认为'first'

first:除第一个匹配项外,删除重复项。 last:除去最后一次出现的重复项。 False:删除所有重复项。 inplace:布尔值,默认为False

是将副本放置在适当位置还是返回副本

返回:
重复数据删除:DataFrame

答案 1 :(得分:0)

您需要分配或就地使用。

data.drop_duplicates(subset=['Addresses'], keep='first', inplace=True)