pandas dataframe 怎么保留重复的行

要保留Pandas DataFrame 中的重复行,可以使用duplicated()方法和布尔索引。

下面是一个示例,演示如何实现这个功能:

python 复制代码
import pandas as pd

# 创建一个DataFrame对象
df = pd.DataFrame({'A': ['apple', 'banana', 'apple', 'orange', 'banana', 'banana']})

# 使用duplicated()方法查找重复行
duplicates = df.duplicated()

# 使用布尔索引选择重复行
duplicate_rows = df[duplicates]

print(duplicate_rows)

运行结果

python 复制代码
A
2   apple
4  banana
5  banana

在上述代码中,我们首先使用duplicated()方法查找DataFrame中的重复行,返回一个布尔Series,其中值为True表示对应的行是重复的。然后,我们使用这个布尔Series作为布尔索引,从DataFrame中选择重复的行,并将结果存储在duplicate_rows变量中。


如果你想保留Pandas DataFrame中的所有重复行,可以使用duplicated()方法和keep参数。

下面是一个示例,演示如何实现这个功能:

python 复制代码
import pandas as pd

# 创建一个DataFrame对象
df = pd.DataFrame({'A': ['apple', 'banana', 'apple', 'orange', 'banana', 'banana']})

# 使用duplicated()方法查找重复行,并保留所有重复行
duplicates = df.duplicated(keep=False)

# 使用布尔索引选择重复行
duplicate_rows = df[duplicates]

print(duplicate_rows)

运行上述代码会输出下面的结果:

python 复制代码
A
0   apple
2   apple
4  banana
5  banana

在上述代码中,我们使用duplicated()方法查找DataFrame中的重复行,并通过将keep参数设置为False来保留所有重复行。该方法返回一个布尔Series,其中值为True表示对应的行是重复的。

然后,我们使用这个布尔Series作为布尔索引,从DataFrame中选择重复的行,并将结果存储在duplicate_rows变量中。

这样,duplicate_rows就是一个包含了所有重复行的新DataFrame对象。

相关推荐
大模型真好玩28 分钟前
什么是Loop Engineering?最通俗易懂的Loop Engineering核心概念
人工智能·agent·deepseek
叁两37 分钟前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js
LaiYoung_1 小时前
🎁 送你一套超好用超实用的 FE AI-Coding Skills
前端·人工智能·开源
ZzT3 小时前
怎么做才不会被 AI 替代?
人工智能·程序员
道友可好3 小时前
从今天开始:你的第一个 Harness Engineering 实践
前端·人工智能·后端
小姜前线技术5 小时前
AI回答代码块高亮加一键复制
人工智能
洛阳泰山5 小时前
从 0 到 1.6K Star:一个 Java 开源项目的增长复盘
人工智能·后端·开源
米小虾5 小时前
Agent Skill 设计模式完全指南
人工智能·agent
饼干哥哥6 小时前
保姆级教程:用Image2 + Seedance2.0 做长视频,以品牌广告为例
人工智能
米小虾6 小时前
Agent Skill 规范与 Skill-Creator 核心思想
人工智能·agent