Python 使用 drop_duplicates() 函数删除重复行
在 Pandas 中,drop_duplicates()
函数用于删除 DataFrame 中的重复行。下面是如何使用这个函数的一个简单示例。
首先,确保你已经安装并导入了 Pandas 库:
import pandas as pd
接下来,假设你有一个 DataFrame,比如:
data = {
'Name': ['Alice', 'Bob', 'Alice', 'David', 'Bob'],
'Age': [25, 30, 25, 40, 30],
'City': ['New York', 'Los Angeles', 'New York', 'Chicago', 'Los Angeles']
}
df = pd.DataFrame(data)
print("Original DataFrame:")
print(df)
上述代码将创建如下的 DataFrame:
Name Age City
0 Alice 25 New York
1 Bob 30 Los Angeles
2 Alice 25 New York
3 David 40 Chicago
4 Bob 30 Los Angeles
要删除重复行,可以使用 drop_duplicates()
:
df_unique = df.drop_duplicates()
print("\nDataFrame after removing duplicates:")
print(df_unique)
默认情况下,drop_duplicates()
会基于所有列来判断重复。如果你想要基于特定列删除重复项,可以传递 subset
参数:
# 仅根据 'Name' 列来判断重复,并删除它们
df_unique_based_on_name = df.drop_duplicates(subset=['Name'])
print("\nDataFrame after removing duplicates based on 'Name':")
print(df_unique_based_on_name)
对于上述示例使用 subset=['Name']
后的输出会是:
Name Age City
0 Alice 25 New York
1 Bob 30 Los Angeles
3 David 40 Chicago
记住 drop_duplicates()
默认为返回处理后的新 DataFrame。如果你想就地删除重复项,可以设置 inplace=True
。
df.drop_duplicates(inplace=True)
这个对原来的 df
进行修改,直接删除重复项。