def get_binding_value(): peptides_string = request.forms.get('peptide') if peptides_string is None: return "ERROR: no peptide given" peptides_list = split_uppercase_sequences(peptides_string) alleles_string = request.forms.get('allele') if alleles_string is None: return "ERROR: no allele given" alleles_list = split_allele_names(alleles_string) try: result_df = predict(alleles=alleles_list, peptides=peptides_list) except ValueError as e: return "ERROR: %s" % e.args[0] return result_df.to_csv(sep="\t", index=False, float_format="%0.4f")
from mhcflurry.class1 import predict parser = argparse.ArgumentParser() parser.add_argument( "--mhc", default="HLA-A*02:01", type=split_allele_names, help="Comma separated list of MHC alleles") parser.add_argument( "--sequence", required=True, type=split_uppercase_sequences, help="Comma separated list of protein sequences") parser.add_argument( "--fasta-file", help="FASTA file of protein sequences to chop up into peptides") parser.add_argument( "--peptide-lengths", default=[9], type=parse_int_list, help="Comma separated list of peptide length, e.g. 8,9,10,11") if __name__ == "__main__": args = parser.parse_args() df = predict(alleles=args.mhc, peptides=args.sequence) print(df.to_csv(sep="\t", index=False), end="")