gpt4 book ai didi

python - 如何在 Python 中对非常大的数据集执行高效的成员搜索

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:31:22 25 4
gpt4 key购买 nike

我的问题是关于列表/集合成员搜索效率的。我想将一小部分基因组 kmers(核苷酸串)与非常大的 kmers 列表进行比较,以测试成员资格。大列表可能达到 GB 范围,因为该算法是为大型真核基因组设计的。

较小的列表只会在 KB 范围内,但可能有数百万个这样的列表!显然,我迫切需要一种有效的方法来搜索这个大列表。

根据我看到的类似问题,我不应该将大列表转换为集合,因为它会占用太多内存。我一直在使用较小的列表作为集合,但它并没有为我节省很多时间。

最后,一旦脚本完成,它将被设计为在通常用于大型基因组算法的大内存机器上运行。

谢谢

最佳答案

BioPython有一个 trie 实现正是为了这个目的。

from Bio import trie
tr = trie.trie()

关于python - 如何在 Python 中对非常大的数据集执行高效的成员搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21769526/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com