VenusREM / model /data /data_format_convert.py
wuxing0105's picture
Upload folder using huggingface_hub (part 8)
feb41b4 verified
Raw
History Blame Contribute Delete
2.31 kB
import os
import shutil
import argparse
from tqdm import tqdm
if __name__ == '__main__':
parser = argparse.ArgumentParser(description='data format converter')
parser.add_argument("--input_dir", type=str, default=None, required=True)
parser.add_argument("--output_dir", type=str, default=None, required=True)
parser.add_argument("--format", type=str, default="REM2SSN", choices=['SSN2REM', 'REM2SSN'], required=True)
args = parser.parse_args()
os.makedirs(args.output_dir, exist_ok=True)
if args.format == "REM2SSN":
output_dir = os.path.join(args.output_dir, "DATASET")
os.makedirs(output_dir, exist_ok=True)
proteins = os.listdir(args.input_dir + "/aa_seq")
for p in tqdm(proteins):
protein_name = p.split(".")[0]
out_protein_dir = os.path.join(output_dir, protein_name)
os.makedirs(out_protein_dir, exist_ok=True)
shutil.copyfile(f"{args.input_dir}/aa_seq/{protein_name}.fasta", f"{out_protein_dir}/{protein_name}.fasta")
shutil.copyfile(f"{args.input_dir}/pdbs/{protein_name}.pdb", f"{out_protein_dir}/{protein_name}.pdb")
shutil.copyfile(f"{args.input_dir}/substitutions/{protein_name}.csv", f"{out_protein_dir}/{protein_name}.csv")
elif args.format == "SSN2REM":
proteins = os.listdir(args.input_dir + "/DATASET")
pdb_dir = os.path.join(args.output_dir, "pdbs")
os.makedirs(pdb_dir, exist_ok=True)
aa_seq_dir = os.path.join(args.output_dir, "aa_seq")
os.makedirs(aa_seq_dir, exist_ok=True)
substitutions_dir = os.path.join(args.output_dir, "substitutions")
os.makedirs(substitutions_dir, exist_ok=True)
for p in tqdm(proteins):
protein_name = p
out_protein_dir = os.path.join(args.output_dir, protein_name)
os.makedirs(out_protein_dir, exist_ok=True)
shutil.copyfile(f"{args.input_dir}/DATASET/{protein_name}/{protein_name}.fasta", f"{out_protein_dir}/{protein_name}.fasta")
shutil.copyfile(f"{args.input_dir}/DATASET/{protein_name}/{protein_name}.pdb", f"{out_protein_dir}/{protein_name}.pdb")
shutil.copyfile(f"{args.input_dir}/DATASET/{protein_name}/{protein_name}.csv", f"{out_protein_dir}/{protein_name}.csv")