【发布时间】:2012-07-12 20:13:11
【问题描述】:
我是一名分子生物学家,使用 Biopython 分析基因突变,我的问题是:
我有一个包含许多不同序列(数百万)的文件,其中大部分是重复的。我需要找到重复项并丢弃它们,为每个唯一序列保留一份副本。我打算使用模块 editdist 来计算它们之间的编辑距离,以确定哪些是重复项,但 editdist 只能处理 2 个字符串,而不是文件。
任何人都知道我可以如何将该模块与文件而不是字符串一起使用?
【问题讨论】:
-
读入文件并将其拆分成单词然后比较单词?
-
你能发布一些关于文件包含的更多信息吗?每一行都是一个序列吗?是否有诸如“BEGIN SEQUENCE”或“END SEQUENCE”之类的标记? ?
-
您是对近似重复(editdist 可能有用)还是实际重复感兴趣?
-
我对分子生物学了解不多,但基本上,您拥有的是一个字符串列表(序列?),并且您希望它们是唯一的(没有两个字符串是相同的) , 对?如果是这样,也许 Python 中的
set(docs.python.org/library/stdtypes.html#set) 类型可以帮助您!正如 Russel 在我之前所说的那样,这只有在您正在寻找完全相同的重复项时才有效。 -
文件包含序列和序列ID。没有标记,只是不同序列之间的换行符
标签: python sequence edit distance biopython