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。
下面是两个示例:
- 去重一个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
- 根据一列去重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列上去重,并保留了每个独特值第一次出现的行。