Compression Sequitur算法的Python实现?
我需要在一个生物信息学项目中使用Sequitur算法,但到目前为止,我还没有找到该算法的任何Python实现。到目前为止,我得到的是:Compression Sequitur算法的Python实现?,compression,sequences,Compression,Sequences,我需要在一个生物信息学项目中使用Sequitur算法,但到目前为止,我还没有找到该算法的任何Python实现。到目前为止,我得到的是: def new_rule(sequence,rules,x,y,z): y = list(y) if max(y) > 1: ind = y.index(max(y)) locations = np.zeros(max(y)) counter = 0 for i,
def new_rule(sequence,rules,x,y,z):
y = list(y)
if max(y) > 1:
ind = y.index(max(y))
locations = np.zeros(max(y))
counter = 0
for i, j in enumerate(z):
if j == x[ind]:
locations[counter] = i
counter+=1
new_rule = 'A'+str(len(rules)+1)
rules.append([new_rule,x[ind]])
return sequence.replace(x[ind],new_rule), rules
def word_count(sequence):
return len(sequence)-sequence.count(' ')
def recursive_sequitur(sequence,rules):
count_down = word_count(sequence)-1
x,y,z = n_grams(sequence,count_down)
while count_down>1:
if len(y) > 1 and max(y) > 1:
sequence, rules = new_rule(sequence,rules,x,y,z)
x,y,z = n_grams(sequence,count_down)
else:
count_down-=1
x,y,z = n_grams(sequence,count_down)
return sequence, rules
你看过Python吗
我们实现了Sequitur的串行和并行版本
压缩算法。Sequitur算法使用层次结构
用于压缩文件的离散符号的结构和序列
利用字符串中的重复结构
:Sequitur算法的简单并行实现。在主进程按顺序合并所有结果之前,文本在运行串行算法版本的工作进程之间进行拆分