python - 删除不重复的条目

标签 python pandas

数据框( Pandas )有两列。需要删除第一列中的条目没有重复项的那些行。

示例数据:

1个A
1个B
2个A
3个D
2个C
4个E
4个E

预期输出

1个A
1个B
2个A
2个C
4个E
4个E

换句话说,需要从第 1 列中删除所有单次出现(暗示唯一)的值。在 python 中实现此目的的最快方法是什么(~50k 行)?

最佳答案

一种方法是使用duplicated()方法

df.duplicated('c1') 默认标记除第一个以外的所有标记,take_last=True 给出其他标记。

In [600]: df[df.duplicated('c1') | df.duplicated('c1', take_last=True)]
Out[600]:
   c1 c2
0   1  A
1   1  B
2   2  A
4   2  C
5   4  E
6   4  E

关于python - 删除不重复的条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33182945/

相关文章:

python - 在 PyQt5 中将图像插入 QGridLayout 并在图像顶部绘制

Python使用多处理将图像读取到numpy数组

python - Pandas - 拆分、重构和重载 ID 列

python - 将时间戳转换为日、月、年和小时

python - 在 Python 中将字符串转换为 float

python - Pandas 损益汇总至下一个工作日

python - 通过字符串前缀加入 Pandas 数据帧

python - Pandas - DataFrame 将列或旋转列转换为新行

python - Pandas:将索引值列表应用于数据框

jquery - 运行执行 API 调用的最有效方法