详解pandas.DataFrame.drop_duplicates()(删除重复行)函数使用方法

  • Post category:Python

pandas.DataFrame.drop_duplicates()方法用于删除DataFrame中的重复行。具体而言,该方法会返回一个DataFrame,其中包含了所有非重复行的数据。

使用方法如下:

DataFrame.drop_duplicates(subset=None, keep='first', inplace=False, ignore_index=False)
  • subset:可选参数,用来指定需要去重的列名或列名列表。默认值为None,表示在所有列上去重。
  • keep:可选参数,表示去重后应该保留哪些行。可选的选项有:’first’,’last’,False。默认值为’first’,表示保留第一个出现的值。
  • inplace:可选参数,表示是否修改原始DataFrame。默认值为False,表示返回一个新的DataFrame。
  • ignore_index:可选参数,表示是否将索引重置为从0开始的连续整数。默认值为False。

下面是两个示例:

  1. 去重一个DataFrame中的所有重复行:
import pandas as pd

df = pd.DataFrame({'A': [1, 1, 2, 3, 3],
                   'B': [4, 5, 6, 7, 7]})
df.drop_duplicates(inplace=True)
print(df)

输出:

   A  B
0  1  4
1  1  5
2  2  6
3  3  7
  1. 根据一列去重DataFrame中的重复行:
import pandas as pd

df = pd.DataFrame({'A': [1, 1, 2, 3, 3],
                   'B': [4, 5, 6, 7, 7]})
df.drop_duplicates(subset='A', inplace=True)
print(df)

输出:

   A  B
0  1  4
2  2  6
3  3  7

在这个例子中,我们使用subset参数指定了A列,结果只在A列上去重,并保留了每个独特值第一次出现的行。