annotate cherry_pick_fasta.py @ 1:f7684171dab3 draft default tip

planemo upload for repository https://github.com/ARTbio/tools-artbio/tree/master/tools/cherry_pick_fasta commit b6de14061c479f0418cd89e26d6f5ac26e565a07
author drosofff
date Wed, 09 Nov 2016 11:31:12 -0500
parents c7a0ec8263b4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
1 #!/usr/bin/env python
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
2 # -*- coding: utf-8 -*-
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
3 """
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
4 Chery pick of fasta sequences satisfying a query string in their header/name
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
5 """
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
6
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
7 import argparse
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
8
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
9 def Parser():
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
10 the_parser = argparse.ArgumentParser(
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
11 description="Cherry pick fasta sequences")
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
12 the_parser.add_argument(
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
13 '--input', action="store", type=str, help="input fasta file")
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
14 the_parser.add_argument(
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
15 '--query-string', dest="query_string", action="store", type=str,
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
16 help="header containing the string will be extracted as well as the corresponding sequence")
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
17 the_parser.add_argument(
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
18 '--output', action="store", type=str, help="output fasta file")
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
19 args = the_parser.parse_args()
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
20 return args
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
21
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
22 def __main__():
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
23 """ main function """
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
24 args = Parser()
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
25 search_term = args.query_string
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
26 CrudeFasta = open (args.input, "r").read()
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
27 Output = open (args.output, "w")
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
28 FastaListe = CrudeFasta.split(">")
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
29 for sequence in FastaListe:
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
30 if search_term in sequence:
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
31 print >> Output, ">%s" % sequence.rstrip()
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
32 Output.close()
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
33
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
34
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
35 if __name__ == "__main__":
c7a0ec8263b4 planemo upload for repository https://bitbucket.org/drosofff/gedtools/
drosofff
parents:
diff changeset
36 __main__()