''' | |
Extracts UniProt ids from .sto alignment files. | |
''' | |
import argparse | |
from evcouplings.align.alignment import Alignment | |
from evcouplings.align.protocol import modify_alignment, cut_sequence | |
import numpy as np | |
from utils import read_fasta | |
def main(): | |
parser = argparse.ArgumentParser() | |
parser.add_argument('sto_alignment_file', type=str, help='input filepath for .sto') | |
parser.add_argument('output_file', type=str) | |
args = parser.parse_args() | |
with open(args.sto_alignment_file) as a: | |
ali_raw = Alignment.from_file(a, "stockholm") | |
ids = np.unique(ali_raw.ids) | |
with open(args.output_file, 'w') as f: | |
for i in ids: | |
f.write(i.split('|')[1]) | |
f.write('\n') | |
if __name__ == "__main__": | |
main() | |