def main(args): parser = OptionParser('usage: %prog [options]') optionsAvailable = ( ('-i', '--input', 'inputfile', 'string'), ('-o', '--output', 'outputfile', 'string'), ('-a', '--alignment', 'Alignment_Protocol_ID', 'int'), ) for oa in optionsAvailable: parser.add_option(oa[0], oa[1], dest=oa[2], type=oa[3]) (options, args) = parser.parse_args(args) ap = AlignmentProtocol(options.Alignment_Protocol_ID) cArgs = ap.Arguments % {'database': ap.Database_Path} cArgs = cArgs.split(' -') cArgs = [cArgs[0],] + map(lambda x: '-' + x, cArgs[1:]) cArgs.extend(('-i%s' % options.inputfile, '-o%s' % options.outputfile)) rc = runCommand((ap.Program, ) + tuple(cArgs), True)[1] if rc != 0: raise Exception failed = True if os.path.exists(options.outputfile): content = open(options.inputfile).read() nEntries = len(re.findall(r'^>', content, re.M)) lastLine = runCommand(('tail', '-n1', options.outputfile)) match = re.match(r'^#(?:.*)finished(?:.*) (\d+) (?:.*)', lastLine) failed = match is None or int(match.group(1)) != nEntries if failed: return 1 return 0
def main(args): parser = OptionParser('usage: %prog [options]') optionsAvailable = ( ('-i', '--input', 'inputfile', 'string'), ('-o', '--output', 'outputfile', 'string'), ('-s', '--sequencefileid', 'Sequence_File_ID', 'int'), ) for oa in optionsAvailable: parser.add_option(oa[0], oa[1], dest=oa[2], type=oa[3]) (options, args) = parser.parse_args(args) outfn = options.outputfile.replace('.fasta','') out, rc = runCommand((FASTA_FILTER_PATH, '-r0.4', '-H18', '-a:4', '-A0', '--output=%s' % outfn, options.inputfile), True) if rc != 0: raise Exception readsC, sequencesC = countFasta(options.outputfile) if int(readsC) == 0 and int(sequencesC) == 0: print readsC, sequencesC raise Exception rcType = ReadCountType(Name='qualityFiltered', insertIfNeeded=True) ReadCount(Sequence_File_ID=options.Sequence_File_ID, Reads=readsC, Sequences=sequencesC, Read_Count_Type_ID=rcType, insertIfNeeded=True)
def main(args): parser = OptionParser('usage: %prog [options]') optionsAvailable = ( ('-i', '--input', 'inputfile', 'string'), ('-o', '--output', 'outputfile', 'string'), ('-s', '--sequencefileid', 'Sequence_File_ID', 'int'), ) for oa in optionsAvailable: parser.add_option(oa[0], oa[1], dest=oa[2], type=oa[3]) (options, args) = parser.parse_args(args) runCommand((FASTA_FILTER_PATH, '-Q', '-d', options.inputfile)) output = '.'.join((os.path.splitext(options.inputfile)[0], 'noDups', 'fastq')) readsC, sequencesC = countFasta(options.outputfile) if readsC == 0 and sequencesC == 0: raise Exception rcType = ReadCountType(Name='noDups', insertIfNeeded=True) ReadCount(Sequence_File_ID=options.Sequence_File_ID, Reads=readsC, Sequences=sequencesC, Read_Count_Type_ID=rcType, insertIfNeeded=True)