Mercurial > repos > jjohnson > mothur_toolsuite
annotate mothur/lib/galaxy/datatypes/metagenomics.py @ 15:a6189f58fedb
Mothur - updated for Mothur version 1.22.0
author | Jim Johnson <jj@umn.edu> |
---|---|
date | Tue, 08 Nov 2011 11:45:32 -0600 |
parents | 7bfe1f843858 |
children | 541e3c97c240 |
rev | line source |
---|---|
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
2 metagenomics datatypes |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
3 James E Johnson - University of Minnesota |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
4 for Mothur |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
5 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
6 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
7 import data |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
8 import logging, os, sys, time, tempfile, shutil, string, glob, re |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
9 import galaxy.model |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
10 from galaxy.datatypes import metadata |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
11 from galaxy.datatypes import tabular |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
12 from galaxy.datatypes import sequence |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
13 from galaxy.datatypes.metadata import MetadataElement |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
14 from galaxy.datatypes.tabular import Tabular |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
15 from galaxy.datatypes.sequence import Fasta |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
16 from galaxy import util |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
17 from galaxy.datatypes.images import Html |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
18 from sniff import * |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
19 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
20 log = logging.getLogger(__name__) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
21 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
22 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
23 ## Mothur Classes |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
24 |
7 | 25 class Otu( Tabular ): |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
26 file_ext = 'otu' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
27 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
28 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
29 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
30 Determines whether the file is a otu (operational taxonomic unit) format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
31 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
32 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
33 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
34 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
35 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
36 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
37 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
38 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
39 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
40 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
41 if line[0] != '@': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
42 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
43 if len(linePieces) < 2: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
44 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
45 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
46 check = int(linePieces[1]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
47 if check + 2 != len(linePieces): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
48 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
49 except ValueError: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
50 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
51 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
52 if count == 5: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
53 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
54 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
55 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
56 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
57 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
58 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
59 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
60 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
61 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
62 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
63 class OtuList( Otu ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
64 file_ext = 'list' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
65 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
66 class Sabund( Otu ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
67 file_ext = 'sabund' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
68 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
69 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
70 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
71 Determines whether the file is a otu (operational taxonomic unit) format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
72 label<TAB>count[<TAB>value(1..n)] |
7 | 73 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
74 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
75 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
76 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
77 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
78 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
79 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
80 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
81 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
82 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
83 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
84 if line[0] != '@': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
85 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
86 if len(linePieces) < 2: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
87 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
88 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
89 check = int(linePieces[1]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
90 if check + 2 != len(linePieces): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
91 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
92 for i in range( 2, len(linePieces)): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
93 ival = int(linePieces[i]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
94 except ValueError: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
95 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
96 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
97 if count >= 5: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
98 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
99 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
100 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
101 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
102 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
103 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
104 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
105 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
106 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
107 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
108 class Rabund( Sabund ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
109 file_ext = 'rabund' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
110 |
7 | 111 class GroupAbund( Otu ): |
112 file_ext = 'grpabund' | |
113 def init_meta( self, dataset, copy_from=None ): | |
114 Otu.init_meta( self, dataset, copy_from=copy_from ) | |
115 def set_meta( self, dataset, overwrite = True, skip=1, max_data_lines = 100000, **kwd ): | |
116 # See if file starts with header line | |
117 if dataset.has_data(): | |
118 try: | |
119 fh = open( dataset.file_name ) | |
120 line = fh.readline() | |
121 line = line.strip() | |
122 linePieces = line.split('\t') | |
123 if linePieces[0] == 'label' and linePieces[1] == 'Group': | |
124 skip=1 | |
125 else: | |
126 skip=0 | |
127 finally: | |
128 fh.close() | |
129 Otu.set_meta( self, dataset, overwrite, skip, max_data_lines, **kwd) | |
130 def sniff( self, filename, vals_are_int=False): | |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
131 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
132 Determines whether the file is a otu (operational taxonomic unit) Shared format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
133 label<TAB>group<TAB>count[<TAB>value(1..n)] |
7 | 134 The first line is column headings as of Mothur v 1.20 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
135 """ |
7 | 136 log.info( "sniff GroupAbund vals_are_int %s" % vals_are_int) |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
137 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
138 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
139 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
140 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
141 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
142 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
143 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
144 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
145 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
146 if line[0] != '@': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
147 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
148 if len(linePieces) < 3: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
149 return False |
7 | 150 if count > 0 or linePieces[0] != 'label': |
151 try: | |
152 check = int(linePieces[2]) | |
153 if check + 3 != len(linePieces): | |
154 return False | |
155 for i in range( 3, len(linePieces)): | |
156 if vals_are_int: | |
157 ival = int(linePieces[i]) | |
158 else: | |
159 fval = float(linePieces[i]) | |
160 except ValueError: | |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
161 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
162 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
163 if count >= 5: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
164 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
165 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
166 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
167 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
168 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
169 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
170 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
171 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
172 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
173 |
7 | 174 class SharedRabund( GroupAbund ): |
175 file_ext = 'shared' | |
176 | |
177 | |
178 def sniff( self, filename ): | |
179 """ | |
180 Determines whether the file is a otu (operational taxonomic unit) Shared format | |
181 label<TAB>group<TAB>count[<TAB>value(1..n)] | |
182 The first line is column headings as of Mothur v 1.20 | |
183 """ | |
184 # return GroupAbund.sniff(self,filename,True) | |
185 isme = GroupAbund.sniff(self,filename,True) | |
186 log.info( "is SharedRabund %s" % isme) | |
187 return isme | |
188 | |
189 | |
190 class RelAbund( GroupAbund ): | |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
191 file_ext = 'relabund' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
192 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
193 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
194 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
195 Determines whether the file is a otu (operational taxonomic unit) Relative Abundance format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
196 label<TAB>group<TAB>count[<TAB>value(1..n)] |
7 | 197 The first line is column headings as of Mothur v 1.20 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
198 """ |
7 | 199 # return GroupAbund.sniff(self,filename,False) |
200 isme = GroupAbund.sniff(self,filename,False) | |
201 log.info( "is RelAbund %s" % isme) | |
202 return isme | |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
203 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
204 class SecondaryStructureMap(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
205 file_ext = 'map' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
206 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
207 """Initialize secondary structure map datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
208 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
209 self.column_names = ['Map'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
210 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
211 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
212 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
213 Determines whether the file is a secondary structure map format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
214 A single column with an integer value which indicates the row that this row maps to. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
215 check you make sure is structMap[10] = 380 then structMap[380] = 10. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
216 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
217 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
218 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
219 line_num = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
220 rowidxmap = {} |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
221 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
222 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
223 line_num += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
224 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
225 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
226 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
227 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
228 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
229 pointer = int(line) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
230 if pointer > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
231 if pointer > line_num: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
232 rowidxmap[line_num] = pointer |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
233 elif pointer < line_num & rowidxmap[pointer] != line_num: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
234 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
235 except ValueError: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
236 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
237 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
238 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
239 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
240 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
241 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
242 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
243 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
244 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
245 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
246 class SequenceAlignment( Fasta ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
247 file_ext = 'align' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
248 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
249 Fasta.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
250 """Initialize AlignCheck datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
251 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
252 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
253 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
254 Determines whether the file is in Mothur align fasta format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
255 Each sequence line must be the same length |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
256 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
257 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
258 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
259 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
260 len = -1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
261 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
262 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
263 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
264 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
265 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
266 if line: #first non-empty line |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
267 if line.startswith( '>' ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
268 #The next line.strip() must not be '', nor startwith '>' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
269 line = fh.readline().strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
270 if line == '' or line.startswith( '>' ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
271 break |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
272 if len < 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
273 len = len(line) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
274 elif len != len(line): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
275 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
276 else: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
277 break #we found a non-empty line, but its not a fasta header |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
278 if len > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
279 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
280 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
281 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
282 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
283 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
284 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
285 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
286 class AlignCheck( Tabular ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
287 file_ext = 'align.check' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
288 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
289 """Initialize AlignCheck datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
290 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
291 self.column_names = ['name','pound','dash','plus','equal','loop','tilde','total'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
292 self.column_types = ['str','int','int','int','int','int','int','int'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
293 self.comment_lines = 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
294 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
295 def set_meta( self, dataset, overwrite = True, **kwd ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
296 # Tabular.set_meta( self, dataset, overwrite = overwrite, first_line_is_header = True, skip = 1 ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
297 data_lines = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
298 if dataset.has_data(): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
299 dataset_fh = open( dataset.file_name ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
300 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
301 line = dataset_fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
302 if not line: break |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
303 data_lines += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
304 dataset_fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
305 dataset.metadata.comment_lines = 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
306 dataset.metadata.data_lines = data_lines - 1 if data_lines > 0 else 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
307 dataset.metadata.column_names = self.column_names |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
308 dataset.metadata.column_types = self.column_types |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
309 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
310 class AlignReport(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
311 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
312 QueryName QueryLength TemplateName TemplateLength SearchMethod SearchScore AlignmentMethod QueryStart QueryEnd TemplateStart TemplateEnd PairwiseAlignmentLength GapsInQuery GapsInTemplate LongestInsert SimBtwnQuery&Template |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
313 AY457915 501 82283 1525 kmer 89.07 needleman 5 501 1 499 499 2 0 0 97.6 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
314 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
315 file_ext = 'align.report' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
316 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
317 """Initialize AlignCheck datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
318 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
319 self.column_names = ['QueryName','QueryLength','TemplateName','TemplateLength','SearchMethod','SearchScore', |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
320 'AlignmentMethod','QueryStart','QueryEnd','TemplateStart','TemplateEnd', |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
321 'PairwiseAlignmentLength','GapsInQuery','GapsInTemplate','LongestInsert','SimBtwnQuery&Template' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
322 ] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
323 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
324 class BellerophonChimera( Tabular ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
325 file_ext = 'bellerophon.chimera' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
326 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
327 """Initialize AlignCheck datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
328 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
329 self.column_names = ['Name','Score','Left','Right'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
330 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
331 class SecondaryStructureMatch(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
332 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
333 name pound dash plus equal loop tilde total |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
334 9_1_12 42 68 8 28 275 420 872 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
335 9_1_14 36 68 6 26 266 422 851 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
336 9_1_15 44 68 8 28 276 418 873 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
337 9_1_16 34 72 6 30 267 430 860 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
338 9_1_18 46 80 2 36 261 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
339 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
340 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
341 """Initialize SecondaryStructureMatch datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
342 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
343 self.column_names = ['name','pound','dash','plus','equal','loop','tilde','total'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
344 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
345 class DistanceMatrix(data.Text): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
346 file_ext = 'dist' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
347 """Add metadata elements""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
348 MetadataElement( name="sequence_count", default=0, desc="Number of sequences", readonly=False, optional=True, no_value=0 ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
349 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
350 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
351 class LowerTriangleDistanceMatrix(DistanceMatrix): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
352 file_ext = 'lower.dist' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
353 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
354 """Initialize secondary structure map datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
355 DistanceMatrix.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
356 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
357 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
358 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
359 Determines whether the file is a lower-triangle distance matrix (phylip) format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
360 The first line has the number of sequences in the matrix. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
361 The remaining lines have the sequence name followed by a list of distances from all preceeding sequences |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
362 5 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
363 U68589 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
364 U68590 0.3371 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
365 U68591 0.3609 0.3782 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
366 U68592 0.4155 0.3197 0.4148 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
367 U68593 0.2872 0.1690 0.3361 0.2842 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
368 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
369 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
370 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
371 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
372 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
373 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
374 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
375 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
376 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
377 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
378 if line[0] != '@': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
379 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
380 if len(linePieces) != 3: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
381 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
382 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
383 check = float(linePieces[2]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
384 except ValueError: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
385 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
386 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
387 if count == 5: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
388 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
389 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
390 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
391 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
392 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
393 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
394 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
395 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
396 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
397 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
398 class SquareDistanceMatrix(DistanceMatrix,Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
399 file_ext = 'square.dist' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
400 sequence_count = -1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
401 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
402 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
403 """Initialize secondary structure map datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
404 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
405 def init_meta( self, dataset, copy_from=None ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
406 data.Text.init_meta( self, dataset, copy_from=copy_from ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
407 def set_meta( self, dataset, overwrite = True, skip = None, **kwd ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
408 dataset.metadata.sequences = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
409 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
410 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
411 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
412 Determines whether the file is a square distance matrix (Column-formatted distance matrix) format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
413 The first line has the number of sequences in the matrix. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
414 The following lines have the sequence name in the first column plus a column for the distance to each sequence |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
415 in the row order in which they appear in the matrix. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
416 3 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
417 U68589 0.0000 0.3371 0.3610 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
418 U68590 0.3371 0.0000 0.3783 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
419 U68590 0.3371 0.0000 0.3783 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
420 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
421 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
422 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
423 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
424 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
425 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
426 sequence_count = int(line) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
427 col_cnt = seq_cnt + 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
428 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
429 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
430 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
431 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
432 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
433 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
434 if line[0] != '@': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
435 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
436 if len(linePieces) != col_cnt : |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
437 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
438 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
439 for i in range(1, col_cnt): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
440 check = float(linePieces[i]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
441 except ValueError: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
442 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
443 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
444 if count == 5: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
445 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
446 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
447 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
448 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
449 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
450 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
451 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
452 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
453 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
454 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
455 class PairwiseDistanceMatrix(DistanceMatrix,Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
456 file_ext = 'pair.dist' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
457 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
458 """Initialize secondary structure map datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
459 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
460 self.column_names = ['Sequence','Sequence','Distance'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
461 self.column_types = ['str','str','float'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
462 self.comment_lines = 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
463 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
464 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
465 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
466 Determines whether the file is a pairwise distance matrix (Column-formatted distance matrix) format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
467 The first and second columns have the sequence names and the third column is the distance between those sequences. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
468 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
469 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
470 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
471 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
472 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
473 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
474 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
475 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
476 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
477 if line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
478 if line[0] != '@': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
479 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
480 if len(linePieces) != 3: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
481 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
482 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
483 check = float(linePieces[2]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
484 except ValueError: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
485 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
486 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
487 if count == 5: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
488 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
489 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
490 if count < 5 and count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
491 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
492 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
493 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
494 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
495 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
496 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
497 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
498 class AlignCheck(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
499 file_ext = 'align.check' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
500 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
501 """Initialize secondary structure map datatype""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
502 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
503 self.column_names = ['name','pound','dash','plus','equal','loop','tilde','total'] |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
504 self.columns = 8 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
505 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
506 class Names(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
507 file_ext = 'names' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
508 def __init__(self, **kwd): |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
509 """Name file shows the relationship between a representative sequence(col 1) and the sequences(comma-separated) it represents(col 2)""" |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
510 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
511 self.column_names = ['name','representatives'] |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
512 self.columns = 2 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
513 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
514 class Summary(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
515 file_ext = 'summary' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
516 def __init__(self, **kwd): |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
517 """summarizes the quality of sequences in an unaligned or aligned fasta-formatted sequence file""" |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
518 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
519 self.column_names = ['seqname','start','end','nbases','ambigs','polymer'] |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
520 self.columns = 6 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
521 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
522 class Group(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
523 file_ext = 'groups' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
524 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
525 """Name file shows the relationship between a representative sequence(col 1) and the sequences it represents(col 2)""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
526 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
527 self.column_names = ['name','group'] |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
528 self.columns = 2 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
529 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
530 class Design(Tabular): |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
531 file_ext = 'design' |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
532 def __init__(self, **kwd): |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
533 """Name file shows the relationship between a group(col 1) and a grouping (col 2), providing a way to merge groups.""" |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
534 Tabular.__init__( self, **kwd ) |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
535 self.column_names = ['group','grouping'] |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
536 self.columns = 2 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
537 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
538 class AccNos(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
539 file_ext = 'accnos' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
540 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
541 """A list of names""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
542 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
543 self.column_names = ['name'] |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
544 self.columns = 1 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
545 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
546 class Oligos( data.Text ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
547 file_ext = 'oligos' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
548 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
549 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
550 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
551 Determines whether the file is a otu (operational taxonomic unit) format |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
552 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
553 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
554 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
555 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
556 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
557 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
558 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
559 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
560 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
561 else: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
562 if line[0] != '#': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
563 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
564 if len(linePieces) == 2 and re.match('forward|reverse',linePieces[0]): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
565 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
566 continue |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
567 elif len(linePieces) == 3 and re.match('barcode',linePieces[0]): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
568 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
569 continue |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
570 else: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
571 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
572 if count > 20: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
573 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
574 if count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
575 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
576 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
577 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
578 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
579 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
580 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
581 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
582 class Frequency(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
583 file_ext = 'freq' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
584 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
585 """A list of names""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
586 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
587 self.column_names = ['position','frequency'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
588 self.column_types = ['int','float'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
589 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
590 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
591 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
592 Determines whether the file is a frequency tabular format for chimera analysis |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
593 #1.14.0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
594 0 0.000 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
595 1 0.000 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
596 ... |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
597 155 0.975 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
598 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
599 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
600 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
601 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
602 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
603 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
604 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
605 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
606 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
607 else: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
608 if line[0] != '#': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
609 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
610 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
611 i = int(linePieces[0]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
612 f = float(linePieces[1]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
613 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
614 continue |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
615 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
616 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
617 if count > 20: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
618 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
619 if count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
620 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
621 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
622 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
623 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
624 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
625 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
626 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
627 class Quantile(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
628 file_ext = 'quan' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
629 MetadataElement( name="filtered", default=False, no_value=False, optional=True , desc="Quantiles calculated using a mask", readonly=True) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
630 MetadataElement( name="masked", default=False, no_value=False, optional=True , desc="Quantiles calculated using a frequency filter", readonly=True) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
631 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
632 """Quantiles for chimera analysis""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
633 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
634 self.column_names = ['num','ten','twentyfive','fifty','seventyfive','ninetyfive','ninetynine'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
635 self.column_types = ['int','float','float','float','float','float','float'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
636 def set_meta( self, dataset, overwrite = True, skip = None, **kwd ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
637 log.info( "Mothur Quantile set_meta %s" % kwd) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
638 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
639 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
640 Determines whether the file is a quantiles tabular format for chimera analysis |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
641 1 0 0 0 0 0 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
642 2 0.309198 0.309198 0.37161 0.37161 0.37161 0.37161 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
643 3 0.510982 0.563213 0.693529 0.858939 1.07442 1.20608 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
644 ... |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
645 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
646 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
647 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
648 count = 0 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
649 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
650 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
651 line = line.strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
652 if not line: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
653 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
654 else: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
655 if line[0] != '#': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
656 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
657 linePieces = line.split('\t') |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
658 i = int(linePieces[0]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
659 f = float(linePieces[1]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
660 f = float(linePieces[2]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
661 f = float(linePieces[3]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
662 f = float(linePieces[4]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
663 f = float(linePieces[5]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
664 f = float(linePieces[6]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
665 count += 1 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
666 continue |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
667 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
668 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
669 if count > 10: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
670 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
671 if count > 0: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
672 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
673 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
674 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
675 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
676 fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
677 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
678 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
679 class FilteredQuantile(Quantile): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
680 file_ext = 'filtered.quan' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
681 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
682 """Quantiles for chimera analysis""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
683 Quantile.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
684 self.filtered = True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
685 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
686 class MaskedQuantile(Quantile): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
687 file_ext = 'masked.quan' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
688 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
689 """Quantiles for chimera analysis""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
690 Quantile.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
691 self.masked = True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
692 self.filtered = False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
693 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
694 class FilteredMaskedQuantile(Quantile): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
695 file_ext = 'filtered.masked.quan' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
696 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
697 """Quantiles for chimera analysis""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
698 Quantile.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
699 self.masked = True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
700 self.filtered = True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
701 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
702 class LaneMask(data.Text): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
703 file_ext = 'filter' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
704 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
705 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
706 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
707 Determines whether the file is a lane mask filter: 1 line consisting of zeros and ones. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
708 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
709 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
710 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
711 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
712 buff = fh.read(1000) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
713 if not buff: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
714 break #EOF |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
715 else: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
716 if not re.match('^[01]+$',line): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
717 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
718 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
719 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
720 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
721 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
722 close(fh) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
723 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
724 |
15
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
725 class RefTaxonomy(Tabular): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
726 file_ext = 'ref.taxonomy' |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
727 """ |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
728 A table with 2 or 3 columns: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
729 - SequenceName |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
730 - Taxonomy (semicolon-separated taxonomy in descending order) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
731 - integer ? |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
732 Example: 2-column ( http://www.mothur.org/wiki/Taxonomy_outline ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
733 X56533.1 Eukaryota;Alveolata;Ciliophora;Intramacronucleata;Oligohymenophorea;Hymenostomatida;Tetrahymenina;Glaucomidae;Glaucoma; |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
734 X97975.1 Eukaryota;Parabasalidea;Trichomonada;Trichomonadida;unclassified_Trichomonadida; |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
735 AF052717.1 Eukaryota;Parabasalidea; |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
736 Example: 3-column ( http://vamps.mbl.edu/resources/databases.php ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
737 v3_AA008 Bacteria;Firmicutes;Bacilli;Lactobacillales;Streptococcaceae;Streptococcus 5 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
738 v3_AA016 Bacteria 120 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
739 v3_AA019 Archaea;Crenarchaeota;Marine_Group_I 1 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
740 """ |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
741 def __init__(self, **kwd): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
742 Tabular.__init__( self, **kwd ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
743 self.column_names = ['name','taxonomy'] |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
744 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
745 def sniff( self, filename ): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
746 """ |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
747 Determines whether the file is a SequenceTaxonomy |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
748 """ |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
749 try: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
750 pat = '^([^ \t\n\r\x0c\x0b;]+([(]\\d+[)])?(;[^ \t\n\r\x0c\x0b;]+([(]\\d+[)])?)*(;)?)$' |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
751 fh = open( filename ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
752 count = 0 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
753 while True: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
754 line = fh.readline() |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
755 if not line: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
756 break #EOF |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
757 line = line.strip() |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
758 if line: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
759 fields = line.split('\t') |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
760 if 2 <= len(fields) <= 3: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
761 return False |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
762 if not re.match(pat,fields[1]): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
763 return False |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
764 count += 1 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
765 if count > 10: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
766 break |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
767 if count > 0: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
768 return True |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
769 except: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
770 pass |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
771 finally: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
772 fh.close() |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
773 return False |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
774 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
775 class SequenceTaxonomy(RefTaxonomy): |
2
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
776 file_ext = 'seq.taxonomy' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
777 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
778 A table with 2 columns: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
779 - SequenceName |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
780 - Taxonomy (semicolon-separated taxonomy in descending order) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
781 Example: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
782 X56533.1 Eukaryota;Alveolata;Ciliophora;Intramacronucleata;Oligohymenophorea;Hymenostomatida;Tetrahymenina;Glaucomidae;Glaucoma; |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
783 X97975.1 Eukaryota;Parabasalidea;Trichomonada;Trichomonadida;unclassified_Trichomonadida; |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
784 AF052717.1 Eukaryota;Parabasalidea; |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
785 """ |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
786 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
787 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
788 self.column_names = ['name','taxonomy'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
789 |
2
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
790 def sniff( self, filename ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
791 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
792 Determines whether the file is a SequenceTaxonomy |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
793 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
794 try: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
795 pat = '^([^ \t\n\r\f\v;]+([(]\d+[)])?[;])+$' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
796 fh = open( filename ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
797 count = 0 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
798 while True: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
799 line = fh.readline() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
800 if not line: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
801 break #EOF |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
802 line = line.strip() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
803 if line: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
804 fields = line.split('\t') |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
805 if len(fields) != 2: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
806 return False |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
807 if not re.match(pat,fields[1]): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
808 return False |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
809 count += 1 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
810 if count > 10: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
811 break |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
812 if count > 0: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
813 return True |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
814 except: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
815 pass |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
816 finally: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
817 fh.close() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
818 return False |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
819 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
820 class RDPSequenceTaxonomy(SequenceTaxonomy): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
821 file_ext = 'rdp.taxonomy' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
822 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
823 A table with 2 columns: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
824 - SequenceName |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
825 - Taxonomy (semicolon-separated taxonomy in descending order, RDP requires exactly 6 levels deep) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
826 Example: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
827 AB001518.1 Bacteria;Bacteroidetes;Sphingobacteria;Sphingobacteriales;unclassified_Sphingobacteriales; |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
828 AB001724.1 Bacteria;Cyanobacteria;Cyanobacteria;Family_II;GpIIa; |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
829 AB001774.1 Bacteria;Chlamydiae;Chlamydiae;Chlamydiales;Chlamydiaceae;Chlamydophila; |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
830 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
831 def sniff( self, filename ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
832 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
833 Determines whether the file is a SequenceTaxonomy |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
834 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
835 try: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
836 pat = '^([^ \t\n\r\f\v;]+([(]\d+[)])?[;]){6}$' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
837 fh = open( filename ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
838 count = 0 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
839 while True: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
840 line = fh.readline() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
841 if not line: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
842 break #EOF |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
843 line = line.strip() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
844 if line: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
845 fields = line.split('\t') |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
846 if len(fields) != 2: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
847 return False |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
848 if not re.match(pat,fields[1]): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
849 return False |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
850 count += 1 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
851 if count > 10: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
852 break |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
853 if count > 0: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
854 return True |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
855 except: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
856 pass |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
857 finally: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
858 fh.close() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
859 return False |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
860 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
861 class ConsensusTaxonomy(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
862 file_ext = 'cons.taxonomy' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
863 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
864 """A list of names""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
865 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
866 self.column_names = ['OTU','count','taxonomy'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
867 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
868 class TaxonomySummary(Tabular): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
869 file_ext = 'tax.summary' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
870 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
871 """A Summary of taxon classification""" |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
872 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
873 self.column_names = ['taxlevel','rankID','taxon','daughterlevels','total'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
874 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
875 class Phylip(data.Text): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
876 file_ext = 'phy' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
877 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
878 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
879 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
880 Determines whether the file is in Phylip format (Interleaved or Sequential) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
881 The first line of the input file contains the number of species and the |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
882 number of characters, in free format, separated by blanks (not by |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
883 commas). The information for each species follows, starting with a |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
884 ten-character species name (which can include punctuation marks and blanks), |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
885 and continuing with the characters for that species. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
886 http://evolution.genetics.washington.edu/phylip/doc/main.html#inputfiles |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
887 Interleaved Example: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
888 6 39 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
889 Archaeopt CGATGCTTAC CGCCGATGCT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
890 HesperorniCGTTACTCGT TGTCGTTACT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
891 BaluchitheTAATGTTAAT TGTTAATGTT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
892 B. virginiTAATGTTCGT TGTTAATGTT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
893 BrontosaurCAAAACCCAT CATCAAAACC |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
894 B.subtilisGGCAGCCAAT CACGGCAGCC |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
895 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
896 TACCGCCGAT GCTTACCGC |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
897 CGTTGTCGTT ACTCGTTGT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
898 AATTGTTAAT GTTAATTGT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
899 CGTTGTTAAT GTTCGTTGT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
900 CATCATCAAA ACCCATCAT |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
901 AATCACGGCA GCCAATCAC |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
902 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
903 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
904 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
905 # counts line |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
906 line = fh.readline().strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
907 linePieces = line.split() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
908 count = int(linePieces[0]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
909 seq_len = int(linePieces[1]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
910 # data lines |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
911 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
912 TODO check data lines |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
913 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
914 line = fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
915 # name is the first 10 characters |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
916 name = line[0:10] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
917 seq = line[10:].strip() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
918 # nucleic base or amino acid 1-char designators (spaces allowed) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
919 bases = ''.join(seq.split()) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
920 # float per base (each separated by space) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
921 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
922 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
923 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
924 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
925 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
926 close(fh) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
927 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
928 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
929 |
1
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
930 class Axes(Tabular): |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
931 file_ext = 'axes' |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
932 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
933 def __init__(self, **kwd): |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
934 """Initialize axes datatype""" |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
935 Tabular.__init__( self, **kwd ) |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
936 def sniff( self, filename ): |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
937 """ |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
938 Determines whether the file is an axes format |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
939 The first line may have column headings. |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
940 The following lines have the name in the first column plus float columns for each axis. |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
941 ==> 98_sq_phylip_amazon.fn.unique.pca.axes <== |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
942 group axis1 axis2 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
943 forest 0.000000 0.145743 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
944 pasture 0.145743 0.000000 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
945 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
946 ==> 98_sq_phylip_amazon.nmds.axes <== |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
947 axis1 axis2 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
948 U68589 0.262608 -0.077498 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
949 U68590 0.027118 0.195197 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
950 U68591 0.329854 0.014395 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
951 """ |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
952 try: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
953 fh = open( filename ) |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
954 count = 0 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
955 line = fh.readline() |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
956 line = line.strip() |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
957 col_cnt = None |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
958 while True: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
959 line = fh.readline() |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
960 line = line.strip() |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
961 if not line: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
962 break #EOF |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
963 if line: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
964 fields = line.split('\t') |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
965 if col_cnt == None: # ignore values in first line as they may be column headings |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
966 col_cnt = len(fields) |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
967 else: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
968 if len(fields) != col_cnt : |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
969 return False |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
970 try: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
971 for i in range(1, col_cnt): |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
972 check = float(fields[i]) |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
973 except ValueError: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
974 return False |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
975 count += 1 |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
976 if count > 10: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
977 return True |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
978 if count > 0: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
979 return True |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
980 except: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
981 pass |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
982 finally: |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
983 fh.close() |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
984 return False |
fcc0778f6987
Migrated tool version 1.16.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
0
diff
changeset
|
985 |
15
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
986 class SffFlow(Tabular): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
987 MetadataElement( name="flow_values", default="", no_value="", optional=True , desc="Total number of flow values", readonly=True) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
988 MetadataElement( name="flow_order", default="TACG", no_value="TACG", desc="Total number of flow values", readonly=False) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
989 file_ext = 'sff.flow' |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
990 """ |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
991 The first line is the total number of flow values - 800 for Titanium data. For GS FLX it would be 400. |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
992 Following lines contain: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
993 - SequenceName |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
994 - the number of useable flows as defined by 454's software |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
995 - the flow intensity for each base going in the order of TACG. |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
996 Example: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
997 800 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
998 GQY1XT001CQL4K 85 1.04 0.00 1.00 0.02 0.03 1.02 0.05 ... |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
999 GQY1XT001CQIRF 84 1.02 0.06 0.98 0.06 0.09 1.05 0.07 ... |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1000 GQY1XT001CF5YW 88 1.02 0.02 1.01 0.04 0.06 1.02 0.03 ... |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1001 """ |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1002 def __init__(self, **kwd): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1003 Tabular.__init__( self, **kwd ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1004 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1005 def set_meta( self, dataset, overwrite = True, skip = 1, max_data_lines = None, **kwd ): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1006 Tabular.set_meta(self, dataset, overwrite, 1, max_data_lines) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1007 try: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1008 fh = open( filename ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1009 line = fh.readline() |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1010 line = line.strip() |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1011 flow_values = int(line) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1012 dataset.metadata.flow_values = flow_values |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1013 finally: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1014 fh.close() |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1015 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1016 def make_html_table( self, dataset, skipchars=[] ): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1017 """Create HTML table, used for displaying peek""" |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1018 out = ['<table cellspacing="0" cellpadding="3">'] |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1019 comments = [] |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1020 try: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1021 # Generate column header |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1022 out.append('<tr>') |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1023 out.append( '<th>%d. Name</th>' % 1 ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1024 out.append( '<th>%d. Flows</th>' % 2 ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1025 for i in range( 3, dataset.metadata.columns+1 ): |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1026 base = dataset.metadata.flow_order[(i+1)%4] |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1027 out.append( '<th>%d. %d %s</th>' % (i-2,base) ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1028 out.append('</tr>') |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1029 out.append( self.make_html_peek_rows( dataset, skipchars=skipchars ) ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1030 out.append( '</table>' ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1031 out = "".join( out ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1032 except Exception, exc: |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1033 out = "Can't create peek %s" % str( exc ) |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1034 return out |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1035 |
a6189f58fedb
Mothur - updated for Mothur version 1.22.0
Jim Johnson <jj@umn.edu>
parents:
7
diff
changeset
|
1036 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1037 ## Qiime Classes |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1038 |
2
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1039 class QiimeMetadataMapping(Tabular): |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1040 MetadataElement( name="column_names", default=[], desc="Column Names", readonly=False, visible=True, no_value=[] ) |
2
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1041 file_ext = 'qiimemapping' |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1042 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1043 def __init__(self, **kwd): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1044 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1045 http://qiime.sourceforge.net/documentation/file_formats.html#mapping-file-overview |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1046 Information about the samples necessary to perform the data analysis. |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1047 # self.column_names = ['#SampleID','BarcodeSequence','LinkerPrimerSequence','Description'] |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1048 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1049 Tabular.__init__( self, **kwd ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1050 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1051 def sniff( self, filename ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1052 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1053 Determines whether the file is a qiime mapping file |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1054 Just checking for an appropriate header line for now, could be improved |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1055 """ |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1056 try: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1057 pat = '#SampleID(\t[a-zA-Z][a-zA-Z0-9_]*)*\tDescription' |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1058 fh = open( filename ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1059 while True: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1060 line = dataset_fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1061 if re.match(pat,line): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1062 return True |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1063 except: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1064 pass |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1065 finally: |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1066 close(fh) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1067 return False |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1068 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1069 def set_column_names(self, dataset): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1070 if dataset.has_data(): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1071 dataset_fh = open( dataset.file_name ) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1072 line = dataset_fh.readline() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1073 if line.startswith('#SampleID'): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1074 dataset.metadata.column_names = line.strip().split('\t'); |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1075 dataset_fh.close() |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1076 |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1077 def set_meta( self, dataset, overwrite = True, skip = None, max_data_lines = None, **kwd ): |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1078 Tabular.set_meta(self, dataset, overwrite, skip, max_data_lines) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1079 self.set_column_names(dataset) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1080 |
2
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1081 class QiimeOTU(Tabular): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1082 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1083 Associates OTUs with sequence IDs |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1084 Example: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1085 0 FLP3FBN01C2MYD FLP3FBN01B2ALM |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1086 1 FLP3FBN01DF6NE FLP3FBN01CKW1J FLP3FBN01CHVM4 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1087 2 FLP3FBN01AXQ2Z |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1088 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1089 file_ext = 'qiimeotu' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1090 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1091 class QiimeOTUTable(Tabular): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1092 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1093 #Full OTU Counts |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1094 #OTU ID PC.354 PC.355 PC.356 Consensus Lineage |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1095 0 0 1 0 Root;Bacteria;Firmicutes;"Clostridia";Clostridiales |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1096 1 1 3 1 Root;Bacteria |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1097 2 0 2 2 Root;Bacteria;Bacteroidetes |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1098 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1099 MetadataElement( name="column_names", default=[], desc="Column Names", readonly=False, visible=True, no_value=[] ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1100 file_ext = 'qiimeotutable' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1101 def init_meta( self, dataset, copy_from=None ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1102 tabular.Tabular.init_meta( self, dataset, copy_from=copy_from ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1103 def set_meta( self, dataset, overwrite = True, skip = None, **kwd ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1104 self.set_column_names(dataset) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1105 def set_column_names(self, dataset): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1106 if dataset.has_data(): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1107 dataset_fh = open( dataset.file_name ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1108 line = dataset_fh.readline() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1109 line = dataset_fh.readline() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1110 if line.startswith('#OTU ID'): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1111 dataset.metadata.column_names = line.strip().split('\t'); |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1112 dataset_fh.close() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1113 dataset.metadata.comment_lines = 2 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1114 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1115 class QiimeDistanceMatrix(Tabular): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1116 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1117 PC.354 PC.355 PC.356 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1118 PC.354 0.0 3.177 1.955 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1119 PC.355 3.177 0.0 3.444 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1120 PC.356 1.955 3.444 0.0 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1121 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1122 file_ext = 'qiimedistmat' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1123 def init_meta( self, dataset, copy_from=None ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1124 tabular.Tabular.init_meta( self, dataset, copy_from=copy_from ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1125 def set_meta( self, dataset, overwrite = True, skip = None, **kwd ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1126 self.set_column_names(dataset) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1127 def set_column_names(self, dataset): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1128 if dataset.has_data(): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1129 dataset_fh = open( dataset.file_name ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1130 line = dataset_fh.readline() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1131 # first line contains the names |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1132 dataset.metadata.column_names = line.strip().split('\t'); |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1133 dataset_fh.close() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1134 dataset.metadata.comment_lines = 1 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1135 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1136 class QiimePCA(Tabular): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1137 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1138 Principal Coordinate Analysis Data |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1139 The principal coordinate (PC) axes (columns) for each sample (rows). |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1140 Pairs of PCs can then be graphed to view the relationships between samples. |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1141 The bottom of the output file contains the eigenvalues and % variation explained for each PC. |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1142 Example: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1143 pc vector number 1 2 3 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1144 PC.354 -0.309063936588 0.0398252112257 0.0744672231759 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1145 PC.355 -0.106593922619 0.141125998277 0.0780204374172 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1146 PC.356 -0.219869362955 0.00917241121781 0.0357281314115 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1147 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1148 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1149 eigvals 0.480220500471 0.163567082874 0.125594470811 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1150 % variation explained 51.6955484555 17.6079322939 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1151 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1152 file_ext = 'qiimepca' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1153 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1154 class QiimeParams(Tabular): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1155 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1156 ###pick_otus_through_otu_table.py parameters### |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1157 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1158 # OTU picker parameters |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1159 pick_otus:otu_picking_method uclust |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1160 pick_otus:clustering_algorithm furthest |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1161 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1162 # Representative set picker parameters |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1163 pick_rep_set:rep_set_picking_method first |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1164 pick_rep_set:sort_by otu |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1165 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1166 file_ext = 'qiimeparams' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1167 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1168 class QiimePrefs(data.Text): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1169 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1170 A text file, containing coloring preferences to be used by make_distance_histograms.py, make_2d_plots.py and make_3d_plots.py. |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1171 Example: |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1172 { |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1173 'background_color':'black', |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1174 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1175 'sample_coloring': |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1176 { |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1177 'Treatment': |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1178 { |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1179 'column':'Treatment', |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1180 'colors':(('red',(0,100,100)),('blue',(240,100,100))) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1181 }, |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1182 'DOB': |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1183 { |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1184 'column':'DOB', |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1185 'colors':(('red',(0,100,100)),('blue',(240,100,100))) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1186 } |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1187 }, |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1188 'MONTE_CARLO_GROUP_DISTANCES': |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1189 { |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1190 'Treatment': 10, |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1191 'DOB': 10 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1192 } |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1193 } |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1194 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1195 file_ext = 'qiimeprefs' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1196 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1197 class QiimeTaxaSummary(Tabular): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1198 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1199 Taxon PC.354 PC.355 PC.356 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1200 Root;Bacteria;Actinobacteria 0.0 0.177 0.955 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1201 Root;Bacteria;Firmicutes 0.177 0.0 0.444 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1202 Root;Bacteria;Proteobacteria 0.955 0.444 0.0 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1203 """ |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1204 MetadataElement( name="column_names", default=[], desc="Column Names", readonly=False, visible=True, no_value=[] ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1205 file_ext = 'qiimetaxsummary' |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1206 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1207 def set_column_names(self, dataset): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1208 if dataset.has_data(): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1209 dataset_fh = open( dataset.file_name ) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1210 line = dataset_fh.readline() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1211 if line.startswith('Taxon'): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1212 dataset.metadata.column_names = line.strip().split('\t'); |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1213 dataset_fh.close() |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1214 |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1215 def set_meta( self, dataset, overwrite = True, skip = None, max_data_lines = None, **kwd ): |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1216 Tabular.set_meta(self, dataset, overwrite, skip, max_data_lines) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1217 self.set_column_names(dataset) |
e990ac8a0f58
Migrated tool version 1.19.0 from old tool shed archive to new tool shed repository
jjohnson
parents:
1
diff
changeset
|
1218 |
0
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1219 if __name__ == '__main__': |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1220 import doctest, sys |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1221 doctest.testmod(sys.modules[__name__]) |
3202a38e44d9
Migrated tool version 1.15.1 from old tool shed archive to new tool shed repository
jjohnson
parents:
diff
changeset
|
1222 |