def rnaf_exec(r,w,args): sq="" if (args.filename != None): if args.filename.endswith('.fasta'): sq = fasta_iter(args.filename).next()[1] else: with open(args.filename, "r") as inFile: sq = inFile.read() else: print("Enter a sequence; press CTRL+D twice when done.") sq = r.read() sq = sq.lower() sq = sq.replace(" ", "") sq = sq.replace("\n", "") sq =sq.replace("t","u") possibleHelices = rnaf_evalSequence(sq, args.minloopsize, args.maxloopsize, args.minlength, args.maxlength) rnaf_findEnergetics(possibleHelices, sq) # rnaf_pDict(possibleHelices, w) if args.graph: rnaf_writeToFileWebGraph(possibleHelices) if args.helicesout: rnaf_writeToFileGauss(possibleHelices) return possibleHelices else: return possibleHelices
import json ''' All possible helices predictions, mainly written by previous class. ''' parser = argparse.ArgumentParser(description="Give an input .fasta or a user defined sequence and this will predict and filter primary helices. May provide configuration parameter file and reference PieSie for validation.") parser.add_argument("filename", nargs='?', help="File containing input sequence", default=None) parser.add_argument("-p", "--params", help="File containing json filtering parameters", default=None) parser.add_argument("-r", "--piesie", help="File containing correct structure annotations (piesie file)", default=None) parser.add_argument("-o", "--outpred", help="Include this flag to output filtered helices data frame", default=None) args = parser.parse_args() if (args.filename != None): if args.filename.endswith('.fasta'): sq = annotate.fasta_iter(args.filename).next()[1] outfile = args.filename.replace('.fasta', '.helices') else: sq = raw_input("Enter a sequence and press enter: ") sq = sq.lower() sq = sq.replace(" ", "") sq =sq.replace("t","u") if args.params != None: params_file = open(args.params) params = json.loads(params_file.read()) else: print 'You Can Input Params -p <file>' print "Just using default params for this run" params = { "minloopsize": 3,