关键词

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

pandas.DataFrame.drop_duplicates() 是 pandas 中常用的数据清洗方法,用于从 DataFrame 中删除重复行。

具体作用是去除 DataFrame 中重复的行,并返回去除后的新 DataFrame。同时,它还可以指定哪些列用于判断重复行,以及判断重复行时的行为。

使用方法:

pandas.DataFrame.drop_duplicates(subset=None, keep='first', inplace=False)

其中,参数说明:

  • subset:可选参数,指定哪些列用于判断是否为重复行,默认是所有列
  • keep:可选参数,指定重复行哪些要保留,默认是保留第一个出现的
  • inplace:可选参数,是否直接对原 DataFrame 进行修改,默认是不修改,返回新的 DataFrame

下面提供两个实例:

实例1

对于以下的 DataFrame,我们想要去除重复的行:

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 2, 3],
                   'B': ['apple', 'banana', 'cherry', 'cherry']})
print(df)

输出结果:

   A       B
0  1   apple
1  2  banana
2  2  cherry
3  3  cherry

我们可以使用 drop_duplicates() 方法去除重复行:

df2 = df.drop_duplicates()
print(df2)

输出结果:

   A       B
0  1   apple
1  2  banana
2  2  cherry
3  3  cherry

我们可以看到,第二行和第三行的 A 和 B 列均与第三行相同,所以第二行被删除了,其他行被保留。

实例2

对于以下的 DataFrame,我们想要去除重复的行,并指定只对 A 列判断是否为重复行:

import pandas as pd

df = pd.DataFrame({'A': [1, 2, 2, 3],
                   'B': ['apple', 'banana', 'cherry', 'cherry']})
print(df)

输出结果:

   A       B
0  1   apple
1  2  banana
2  2  cherry
3  3  cherry

我们可以使用 drop_duplicates() 方法去除重复行,并指定 subset 参数:

df2 = df.drop_duplicates(subset=['A'])
print(df2)

输出结果:

   A       B
0  1   apple
1  2  banana
3  3  cherry

我们可以看到,第二行和第三行的 A 列均为 2,所以第三行被删除了,其他行被保留。

本文链接:http://task.lmcjl.com/news/17690.html

展开阅读全文