python - 有没有办法在熊猫数据框中使用 python 查找序列中缺失的数字?
问题描述
因此,我试图找到事物列表中缺少的事物。它们保存在 pandas 数据框中,并且位于一列中,数据如下所示:
samples = ["ABC001", "ABC002", "ABC003", "ABC005", "ABC006", "DEF001", "DEF003"]
最终我想找到丢失的 ["ABC004", "DEF002"] 并将它们放入一个新列表中。标识符“ABC”或“DEF”可能不止这些。我也有时间数据可以用来帮助查找丢失的东西的过程说输入 ABC004 和 ABC006 之间有 2 分钟的间隔,而通常输入应该需要 1 分钟。
有没有聪明的方法来做到这一点。我有一个排序列表,但是我很难弄清楚如何从那里去获取丢失样本的列表。任何建议将不胜感激!
解决方案
既然你说你想找到缺失的,我假设你心里有一个列表,其中包含你想要的所有值。您可以制作此列表,例如:
ABC_samples = [f"ABC{x:03d}" for x in range(6)]
ABC_samples
>>> ['ABC000', 'ABC001', 'ABC002', 'ABC003', 'ABC004', 'ABC005']
然后您可以查询不在两个集合中的值,例如 ABC_samples 集合和样本集合。
missing = set(samples) ^ set(ABC_samples)
missing
>>> {'ABC000', 'ABC0006', 'ABC004', 'DEF001', 'DEF003'}
推荐阅读
- javascript - 如何将 CSS 基于并行 DOM 元素?
- ruby-on-rails-5 - 如何在 Rail API-only 中配置 inky-rb
- xslt - 如果输出已经包含相似元素,则跳过 XSLT 中的元素
- symfony - 将 Symfony 项目传递给开发人员
- php - PHP mySQL JOIN 和显示(3 个表)
- java - Spring boot 和 Tomcat 处理用户
- bouncycastle - 使用 BouncyCastle 时如何自定义 keyManagerFactory
- javascript - 如何在javascript中使用regularExpression查找特定的字符串块?
- perl - 打开管道上的缓冲问题,写入文件
- php - 无法在 codeigniter 上上传图片或 pdf