python - 如何检查大型 python pandas 数据框是否有重复项(不需要实际的重复行)

标签 python pandas dataframe

我有 3000 多个 csv 文件,每个文件大约 30 MB。我只需要检查这些文件中是否有重复项。我实际上不需要知道哪些行是重复的。因此,如果甚至发现有一行是重复的,那么我们就不需要检查其他重复的行,我们可以停止扫描那里的文件并移动到下一个文件。 Pandas 功能

.duplicate
.duplicated

没有用,因为它们会扫描整个数据框。他们不会停止寻找第一个重复项。 是否有任何其他功能可以快速检查数据框(来自 csv 文件)是否重复 感谢您的任何输入

最佳答案

遍历枚举行,将每一行添加到一个集合中,并检查集合的长度是否小于当前迭代索引加一,如果是,则发现重复。

s = set()
for ix, row in enumerate(rows):
  s.add(row)
  if len(s) < (ix + 1):
    break  # duplicate found!
    # or: 
    # raise Exception("Duplicate found!")

关于python - 如何检查大型 python pandas 数据框是否有重复项(不需要实际的重复行),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57927883/

相关文章:

python - 在 Python 脚本中提升权限

python - Curl:HTTP/1.1 100 继续文件上传消息

python - 基于列的整个 DataFrame 上的 df.unique()

python - 用列表中的值替换 pandas.DataFrame 的 NaN 值

python - 如何删除包含相同值的 Pandas DataFrame 中的列

python - 加快 python pandas 中的 read_csv

python - 从 python 执行一个 .sh 文件,指示绝对路径

python - MySQL/Python INSERT INTO 语句问题

python - 绘制一天内具有不同时间戳和 datetime.time 格式的时间序列

scala - 删除 Spark DataFrame 的第一行