コード例 #1
0
ファイル: PepSeq.py プロジェクト: bovee/Ochre
    def to_nuc(self, table='standard', rna=False):
        from ochre.Misc import tTables
        tab = tTables(table)

        try:
            rseq = ''.join([tab[i][0] for i in self.seq])
        except KeyError:
            raise KeyError('Amino acid not found in table.')

        if rna:
            return Seq(rseq.replace('T', 'U'), seq_type='RNA')
        else:
            return Seq(rseq, seq_type='DNA')
コード例 #2
0
ファイル: NucSeq.py プロジェクト: bovee/Ochre
    def to_pep(self, table='standard'):
        from ochre.Misc import tTables
        tab = tTables(table)

        flatten = lambda l: [item for sublist in l for item in sublist]
        rtab = dict(flatten([zip(tab[i], len(tab[i]) * [i]) for i in tab]))

        if self._is_rna():
            rtab = dict([(i.replace('T', 'U'), rtab[i]) for i in rtab])

        rseq = ''.join(rtab.get(cdn, 'X') for cdn \
                in self.slid_win(3, overlapping=False) if len(cdn) == 3)

        return Seq(rseq, seq_type='PROTEIN')