赞
踩
返回去除重复行的DataFrame,不考虑索引。
DataFrame.drop_duplicates(subset=None, *, keep='first', inplace=False, ignore_index=False)
参数 | 含义 |
---|---|
subset | 列标签或列标签组成的列表,默认所有列 |
keep | 决定保留重复行中的哪个:first:保留重复值的第一个;last:保留重复值的最后一个;False:删除重复值的所有行 |
inplace | 布尔值,默认False:不修改原来的DataFrame |
ignore_index | 布尔值,默认False:不改变DataFrame的原有索引标签,否则将修改为0,1,…n-1 |
df = pd.DataFrame({ 'brand': ['Yum Yum', 'Yum Yum', 'Indomie', 'Indomie', 'Indomie'], 'style': ['cup', 'cup', 'cup', 'pack', 'pack'], 'rating': [4, 4, 3.5, 15, 5]}) print(df) # 删除某一列中的重复值,保留重复值的第一个值 print('1.\n',df.drop_duplicates(subset='brand',keep='first')) # 删除多列中的重复值,保留重复值的最后一个 print('2.\n',df.drop_duplicates(subset=['brand','style'],keep='last')) # 默认删除所有列同时重复的行 print('3.\n',df.drop_duplicates(keep='first')) # 重新标记索引 print('4.\n',df.drop_duplicates(keep='first',ignore_index=True)) # 删除重复行的所有行 print('5.\n',df.drop_duplicates(keep=False,ignore_index=True))
返回是否为重复行的布尔值Series
DataFrame.duplicated(subset=None, keep='first')
参数 | 含义 |
---|---|
subset | 列标签或列标签组成的列表,默认所有列 |
keep | 决定标记重复行中的哪个:first:标记重复行的第一个之外的为True;last:标记重复行的最后一个之外的为True;False:标记所有的重复行为True |
df = pd.DataFrame({
'brand': ['Yum Yum', 'Yum Yum', 'Indomie', 'Indomie', 'Indomie'],
'style': ['cup', 'cup', 'cup', 'pack', 'pack'],
'rating': [4, 4, 3.5, 15, 5]})
print(df)
# 标记重复行第一个之外的为True
print('1.\n',df.duplicated(keep='first'))
# 标记重复行最后一个之外的为True
print('2.\n',df.duplicated(keep='last'))
# 标记所有重复行为True
print('3.\n',df.duplicated(keep=False))
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。