duplicated() 是 Pandas 中的一个函数,用于检查 DataFrame 或 Series 中的重复项
删除重复行:
使用 drop_duplicates() 函数可以直接删除 DataFrame 中的重复行。这个函数会返回一个新的 DataFrame,其中不包含重复项。你可以选择只保留第一次出现的重复项,或者只保留最后一次出现的重复项。
import pandas as pd# 创建一个包含重复数据的 DataFramedata = {'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')根据特定列查找重复项:
你可以使用 duplicated() 函数来查找 DataFrame 中特定列的重复项。例如,如果你想要找到列 ‘A’ 中的重复值,可以这样做:
import pandas as pd# 创建一个包含重复数据的 DataFramedata = {'A': [1, 2, 2, 3], 'B': [4, 5, 5, 6]}df = pd.DataFrame(data)# 查找列 'A' 中的重复项duplicates = df.duplicated(subset=['A'])# 打印重复项的布尔值print(duplicates)根据多个列查找重复项:
要根据多个列查找重复项,只需将这些列名作为列表传递给 duplicated() 函数的 subset 参数。例如,如果你想要找到同时在列 ‘A’ 和 ‘B’ 中有重复值的行,可以这样做:
import pandas as pd# 创建一个包含重复数据的 DataFramedata = {'A': [1, 2, 2, 3], 'B': [4, 5, 5, 6]}df = pd.DataFrame(data)# 查找列 'A' 和 'B' 中的重复项duplicates = df.duplicated(subset=['A', 'B'])# 打印重复项的布尔值print(duplicates)使用 duplicated() 结果进行筛选:
你可以将 duplicated() 函数的结果与布尔索引结合起来,以仅选择重复的行或非重复的行。例如,要选择所有重复的行,可以这样做:
import pandas as pd# 创建一个包含重复数据的 DataFramedata = {'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() 对数据进行处理。


