DNA字符串可以是由5个字母(A、T、G、C、N)的任意组合组成的任意长度。
压缩由5个字母(A,T,G,C,N)组成的字母表DNA字符串的有效方法是什么?不考虑每个字母表3位,我们能用更少的位数有效地压缩和检索吗?有没有人能推荐一个伪代码来进行有效的压缩和检索?
发布于 2018-08-20 09:12:42
坦率地说,我将从一些版本的Lempel-Ziv压缩开始(一类压缩算法,包括通用的gzip
压缩格式)。我注意到一些评论说通用压缩算法在原始基因组数据上不能很好地工作,但它们的有效性取决于数据如何呈现给它们。
请注意,大多数通用压缩程序(如gzip
)以字节为单位检查它们的输入。这意味着,以3位/基数“预压缩”基因组数据会适得其反;相反,您应该在通过通用压缩器运行未压缩的基因组数据之前,以每个基数一个字节的速度格式化未压缩的基因组数据。Ascii "AGTCN“编码应该没问题,只要您不通过包含空格、换行符或大小写变化来添加噪声。
Lempel-Ziv压缩方法的工作原理是识别输入中的重复子串,然后参考前面的数据对其进行编码;我预计这类方法应该在适当呈现的基因组数据上做得相当好。一种更具基因组特异性的压缩方法可能会在这方面有所改进,但除非对基因组编码存在一些我不知道的强大的、非局部的约束,否则我预计不会有重大的改进。
https://stackoverflow.com/questions/51859259
复制相似问题