在Python的Pandas库中,可以使用drop_duplicates()
方法来高效地去除DataFrame中完全相同的重复行。这个方法会返回一个新的DataFrame,其中删除了所有重复的行。
import pandas as pd
# 创建一个示例DataFrame
data = {
'A': [1, 2, 2, 3],
'B': [4, 5, 5, 6],
'C': [7, 8, 8, 9]
}
df = pd.DataFrame(data)
# 去除完全相同的重复行
df_unique = df.drop_duplicates()
print(df_unique)
keep
: 决定保留哪个重复行。默认是'first'
,表示保留第一次出现的重复行;'last'
表示保留最后一次出现的重复行;False
表示删除所有重复行。subset
: 可以指定某些列来判断重复行。默认是None
,表示使用所有列。inplace
: 如果为True
,则直接在原DataFrame上进行修改,不返回新的DataFrame。默认是False
。# 保留最后一次出现的重复行
df_unique_last = df.drop_duplicates(keep='last')
# 只根据列'A'和'B'来判断重复行
df_unique_subset = df.drop_duplicates(subset=['A', 'B'])
# 直接在原DataFrame上修改
df.drop_duplicates(inplace=True)
subset
参数来减少需要比较的列数,从而提高性能。inplace=True
来避免创建新的DataFrame,从而节省内存。drop_duplicates()
是一个非常方便且高效的方法,可以帮助你快速去除DataFrame中的重复行。根据具体需求,你可以通过调整参数来灵活控制去重的行为。