change fasta_to_ali
This commit is contained in:
@@ -6,6 +6,10 @@ import time
|
|||||||
from typing import List
|
from typing import List
|
||||||
import sys
|
import sys
|
||||||
import glob
|
import glob
|
||||||
|
import pyfastx
|
||||||
|
from Bio import SeqIO
|
||||||
|
from Bio.Seq import Seq
|
||||||
|
from Bio.SeqRecord import SeqRecord
|
||||||
|
|
||||||
@dataclass
|
@dataclass
|
||||||
class PDBModeler:
|
class PDBModeler:
|
||||||
@@ -108,13 +112,13 @@ class PDBModeler:
|
|||||||
if ali_file.exists():
|
if ali_file.exists():
|
||||||
ali_file.unlink()
|
ali_file.unlink()
|
||||||
|
|
||||||
with open(self.fasta_file, 'r') as f:
|
fx = pyfastx.Fasta(self.fasta_file.as_posix(), build_index=True)
|
||||||
seq = f.readlines()[1].strip()
|
assert len(fx) == 1, "FASTA file should contain only one sequence"
|
||||||
|
|
||||||
with open(ali_file, 'w') as f:
|
with open(ali_file, 'w') as f:
|
||||||
f.write(f'>P1;{self.sequence}\n')
|
f.write(f'>P1;{self.sequence}\n')
|
||||||
f.write(f'sequence:{self.sequence}:::::::0.00: 0.00\n')
|
f.write(f'sequence:{self.sequence}:::::::0.00: 0.00\n')
|
||||||
f.write(f'{seq}*')
|
f.write(f'{fx[0].seq}*')
|
||||||
|
|
||||||
return ali_file
|
return ali_file
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user