Mercurial > repos > yufei-luo > s_mart
comparison commons/pyRepetUnit/align/AlignListUtils.py @ 31:0ab839023fe4
Uploaded
author | m-zytnicki |
---|---|
date | Tue, 30 Apr 2013 14:33:21 -0400 |
parents | 94ab73e8a190 |
children |
comparison
equal
deleted
inserted
replaced
30:5677346472b5 | 31:0ab839023fe4 |
---|---|
1 import os | |
2 import commons.core.coord.Align | |
3 import commons.pyRepetUnit.align.AlignList | |
4 from commons.core.utils.FileUtils import FileUtils | |
5 | |
6 class AlignListUtils: | |
7 | |
8 ##read a file in align format and return a AlignList | |
9 # | |
10 # @param inFileName string name of file | |
11 # @return listAlignInstance list list of align instance | |
12 # | |
13 def read( inFileName ): | |
14 alignInstance = commons.core.coord.Align.Align() | |
15 listAlignInstance = commons.pyRepetUnit.align.AlignList.AlignList() | |
16 f = open( inFileName , "r") | |
17 while alignInstance.read( f ): | |
18 listAlignInstance.append(alignInstance) | |
19 alignInstance = commons.core.coord.Align.Align() | |
20 f.close | |
21 return (listAlignInstance) | |
22 | |
23 read = staticmethod( read ) | |
24 | |
25 ## write a file in align format from an AlignList | |
26 # | |
27 # @param alignListInstance list list of align instance object | |
28 # @param inFileName string name of file | |
29 def write( alignListInstance, inFileName ): | |
30 f = open( inFileName , "w") | |
31 for alignInstance in alignListInstance.getList(): | |
32 alignInstance.write( f ) | |
33 f.close | |
34 | |
35 write = staticmethod( write ) | |
36 | |
37 ## Filter an AlignList by removing all is <= minScore | |
38 # | |
39 # @param listAlignInstance list list of align instance object | |
40 # @param minScore integer minimum score to keep in result | |
41 # | |
42 def filterOnAMinimalScore( listAlignInstance, minScore ): | |
43 listAlignInstanceOld = commons.pyRepetUnit.align.AlignList.AlignList() | |
44 for alignInstance in listAlignInstance.getList(): | |
45 listAlignInstanceOld.append(alignInstance) | |
46 for alignInstance in listAlignInstanceOld.getList(): | |
47 if alignInstance.score <= minScore: | |
48 listAlignInstance.remove(alignInstance) | |
49 | |
50 filterOnAMinimalScore = staticmethod( filterOnAMinimalScore ) | |
51 | |
52 if __name__ == "__main__": | |
53 main() |