2
MUSCLE 알고리즘을 사용하여 다중 서열 정렬을 원합니다.근육에 의한 다중 서열 정렬
from Bio.Align.Applications import MuscleCommandline
muscle_exe = r"C:\Program file\muscle3.8.31_i86win32.exe"
in_file = r"non_aligned.fasta"
out_file = r"aligned.fasta"
muscle_cline = MuscleCommandline(muscle_exe, input=in_file, out=out_file)
print(muscle_cline)
stdout, stderr = muscle_cline()
는하지만, 나는 다음과 같은 다른 방법을 사용하려는 :
nsequences = len(sequences)
for i in range(nsequences):
for j in range(i+1, nsequences):
aln = alignment_function(sequences[i], sequences[j])
print (sequences[i], sequences[j], aln)
곳 시퀀스하여 파일 non_aligned.fasta에 포함 된 시퀀스 및 nsequences은 는 시퀀스 수입니다. 그래서 위의 코드에서 언급 한 것처럼 매번 근육으로 두 시퀀스를 정렬하고 두 시퀀스를 모두 인쇄하려고합니다. alignment_function (sequences [i], sequences [j])은 두 시퀀스의 정렬을 MUSCLE으로 수행하는 함수입니다. 어떻게해야합니까? 이것은해야 같은 후 출력 뭔가 :
seq1 seq2 aln12
seq1 seq3 aln13
seq2 seq3 aln23
도와주세요 !!!!!!!!!!!!! – user3216969
당신의 문제가 실제로 무엇인지는 분명하지 않습니다. 단순히 pairwise 시퀀스 그룹을 얻으려고합니다. 중첩 된 루프를 통해 실행하면됩니다 (시퀀스를 통해 시퀀스를 사용하여 셀 수는 있지만 직접 계산할 필요는 없지만). 파일에서가 아니라 메모리에서 시퀀스를 정렬하기 위해 근육을 얻는 것이 문제입니까? – iayork
모든 페어 와이즈 정렬을 얻으려면 – user3216969