如何结合其他Pandas函数使用duplicated()进行数据处理

avatar
作者
猴君
阅读量:0

duplicated() 是 Pandas 中的一个函数,用于检查 DataFrame 或 Series 中的重复项

  1. 删除重复行:

    使用 drop_duplicates() 函数可以直接删除 DataFrame 中的重复行。这个函数会返回一个新的 DataFrame,其中不包含重复项。你可以选择只保留第一次出现的重复项,或者只保留最后一次出现的重复项。

    import pandas as pd  # 创建一个包含重复数据的 DataFrame data = {'A': [1, 2, 2, 3], 'B': [4, 5, 5, 6]} df = pd.DataFrame(data)  # 删除重复行,只保留第一次出现的重复项 df_no_duplicates = df.drop_duplicates()  # 删除重复行,只保留最后一次出现的重复项 df_no_duplicates_last = df.drop_duplicates(keep='last') 
  2. 根据特定列查找重复项:

    你可以使用 duplicated() 函数来查找 DataFrame 中特定列的重复项。例如,如果你想要找到列 ‘A’ 中的重复值,可以这样做:

    import pandas as pd  # 创建一个包含重复数据的 DataFrame data = {'A': [1, 2, 2, 3], 'B': [4, 5, 5, 6]} df = pd.DataFrame(data)  # 查找列 'A' 中的重复项 duplicates = df.duplicated(subset=['A'])  # 打印重复项的布尔值 print(duplicates) 
  3. 根据多个列查找重复项:

    要根据多个列查找重复项,只需将这些列名作为列表传递给 duplicated() 函数的 subset 参数。例如,如果你想要找到同时在列 ‘A’ 和 ‘B’ 中有重复值的行,可以这样做:

    import pandas as pd  # 创建一个包含重复数据的 DataFrame data = {'A': [1, 2, 2, 3], 'B': [4, 5, 5, 6]} df = pd.DataFrame(data)  # 查找列 'A' 和 'B' 中的重复项 duplicates = df.duplicated(subset=['A', 'B'])  # 打印重复项的布尔值 print(duplicates) 
  4. 使用 duplicated() 结果进行筛选:

    你可以将 duplicated() 函数的结果与布尔索引结合起来,以仅选择重复的行或非重复的行。例如,要选择所有重复的行,可以这样做:

    import pandas as pd  # 创建一个包含重复数据的 DataFrame data = {'A': [1, 2, 2, 3], 'B': [4, 5, 5, 6]} df = pd.DataFrame(data)  # 查找重复项 duplicates = df.duplicated()  # 选择重复的行 duplicate_rows = df[duplicates]  # 打印重复的行 print(duplicate_rows) 

通过结合 Pandas 的其他函数,你可以轻松地使用 duplicated() 对数据进行处理。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!