python dataframe中重复的内容
时间: 2025-06-04 09:27:28 浏览: 21
### 如何在 Python Pandas DataFrame 中处理重复行或值
#### 使用 `drop_duplicates` 方法去除重复行
Pandas 提供了 `drop_duplicates()` 函数来移除 DataFrame 中的重复项。默认情况下,此函数会考虑所有的列,并保留第一次出现的数据,而后续相同的记录会被视为重复并被删除[^1]。
```python
import pandas as pd
data = {'A': ['foo', 'bar', 'foo', 'bar'],
'B': ['one', 'two', 'three', 'four']}
df = pd.DataFrame(data)
# 删除完全相同的行,默认保留首次出现的行
cleaned_df = df.drop_duplicates()
print(cleaned_df)
```
#### 针对特定列去重
如果只希望基于某些指定的列来进行判断是否为重复,则可以在调用 `drop_duplicates()` 的时候传入这些列的名字作为参数。
```python
# 只根据'A'这一列进行去重操作
single_col_cleaned_df = df.drop_duplicates(subset=['A'])
print(single_col_cleaned_df)
```
#### 保持最后一次出现的记录
通过设置 `keep='last'` 参数可以选择保留最后一条而不是第一条不重复的数据条目[^2]。
```python
# 对于重复项仅保存最后一个实例
last_occurrence_kept_df = df.drop_duplicates(keep='last')
print(last_occurrence_kept_df)
```
#### 统计和显示重复次数及具体位置
为了更好地理解哪些数据是重复的以及有多少次重复,可以利用 `duplicated()` 和其他辅助方法获取更详细的统计信息。
```python
# 计算某列下总的重复数量
duplicate_count = df.duplicated('A').sum()
print(f'存在 {duplicate_count} 条重复')
# 获取所有标记为True即表示该行已被判定为重复的数据框
repeated_rows = df[df.duplicated('A')]
print(repeated_rows)
```
阅读全文
相关推荐


















