Mercurial > repos > yufei-luo > s_mart
comparison SMART/Java/Python/clusterize.py @ 67:f4de72c80eac draft
Uploaded
| author | m-zytnicki |
|---|---|
| date | Mon, 16 Nov 2015 11:59:35 -0500 |
| parents | 90f4b29d884f |
| children |
comparison
equal
deleted
inserted
replaced
| 65:4ab9c86890ba | 67:f4de72c80eac |
|---|---|
| 99 fs.perChromosome(True) | 99 fs.perChromosome(True) |
| 100 fs.setPresorted(self.presorted) | 100 fs.setPresorted(self.presorted) |
| 101 fs.setOutputFileName(self.sortedFileNames[fileName]) | 101 fs.setOutputFileName(self.sortedFileNames[fileName]) |
| 102 fs.sort() | 102 fs.sort() |
| 103 self.splittedFileNames[fileName] = fs.getOutputFileNames() | 103 self.splittedFileNames[fileName] = fs.getOutputFileNames() |
| 104 self.nbElementsPerChromosome = fs.getNbElementsPerChromosome() | |
| 105 self.nbElements = fs.getNbElements() | |
| 106 self.chromosomes.update(self.splittedFileNames[fileName].keys()) | 104 self.chromosomes.update(self.splittedFileNames[fileName].keys()) |
| 107 | 105 |
| 108 def _iterate(self): | 106 def _iterate(self): |
| 109 progress = UnlimitedProgress(10000, "Reading input file", self.verbosity) | 107 progress = UnlimitedProgress(10000, "Reading input file", self.verbosity) |
| 110 transcripts = [] | |
| 111 heap = [] | |
| 112 parsersSets = [] | 108 parsersSets = [] |
| 109 self.nbElements = 0 | |
| 113 if self.chromosomes: | 110 if self.chromosomes: |
| 111 for chromosome in self.chromosomes: | |
| 112 parsersSets.append([NCListFileUnpickle(self.splittedFileNames[fileName][chromosome]) for fileName in self.splittedFileNames if chromosome in self.splittedFileNames[fileName]]) | |
| 113 else: | |
| 114 parsersSets.append(self.parsers.values()) | 114 parsersSets.append(self.parsers.values()) |
| 115 else: | |
| 116 for chromosome in self.chromosomes: | |
| 117 parsersSets.append([self.splittedFileNames[fileName][chromosome] for fileName in self.splittedFileNames if chromosome in self.splittedFileNames[fileName]]) | |
| 118 for parsers in parsersSets: | 115 for parsers in parsersSets: |
| 116 transcripts = [] | |
| 117 heap = [] | |
| 119 for parser in parsers: | 118 for parser in parsers: |
| 120 iterator = parser.getIterator() | 119 iterator = parser.getIterator() |
| 121 for transcript in iterator: | 120 for transcript in iterator: |
| 122 if transcript.__class__.__name__ == "Mapping": | 121 if transcript.__class__.__name__ == "Mapping": |
| 123 transcript = transcript.getTranscript() | 122 transcript = transcript.getTranscript() |
| 140 self._write(oldTranscript) | 139 self._write(oldTranscript) |
| 141 else: | 140 else: |
| 142 newTranscripts.append(oldTranscript) | 141 newTranscripts.append(oldTranscript) |
| 143 newTranscripts.append(newTranscript) | 142 newTranscripts.append(newTranscript) |
| 144 transcripts = newTranscripts | 143 transcripts = newTranscripts |
| 144 self.nbElements += 1 | |
| 145 progress.inc() | 145 progress.inc() |
| 146 for transcript in transcripts: | 146 for transcript in transcripts: |
| 147 self._write(transcript) | 147 self._write(transcript) |
| 148 progress.done() | 148 progress.done() |
| 149 | 149 |
