阅读量:0
duplicated()
是 Pandas 中的一个函数,用于检查 DataFrame 或 Series 中的重复项
删除重复行:
使用
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')
根据特定列查找重复项:
你可以使用
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)
根据多个列查找重复项:
要根据多个列查找重复项,只需将这些列名作为列表传递给
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)
使用
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()
对数据进行处理。