Esempio n. 1
0
    def get_dn_ds_matrix(self, method="NG86", codon_table=default_codon_table):
        """Available methods include NG86, LWL85, YN00 and ML.

        Argument:
            - method       - Available methods include NG86, LWL85, YN00 and ML.
            - codon_table  - Codon table to use for forward translation.
        """
        from Bio.Phylo.TreeConstruction import _DistanceMatrix as DM
        names = [i.id for i in self._records]
        size = len(self._records)
        dn_matrix = []
        ds_matrix = []
        for i in range(size):
            dn_matrix.append([])
            ds_matrix.append([])
            for j in range(i + 1):
                if i != j:
                    dn, ds = cal_dn_ds(self._records[i],
                                       self._records[j],
                                       method=method,
                                       codon_table=codon_table)
                    dn_matrix[i].append(dn)
                    ds_matrix[i].append(ds)
                else:
                    dn_matrix[i].append(0.0)
                    ds_matrix[i].append(0.0)
        dn_dm = DM(names, matrix=dn_matrix)
        ds_dm = DM(names, matrix=ds_matrix)
        return dn_dm, ds_dm
Esempio n. 2
0
 def get_dn_ds_matrix(self, method="NG86"):
     """Available methods include NG86, LWL85, YN00 and ML.
     """
     from Bio.Phylo.TreeConstruction import _DistanceMatrix as DM
     names = [i.id for i in self._records]
     size = len(self._records)
     dn_matrix = []
     ds_matrix = []
     for i in range(size):
         dn_matrix.append([])
         ds_matrix.append([])
         for j in range(i + 1):
             if i != j:
                 dn, ds = cal_dn_ds(self._records[i], self._records[j],
                                    method=method)
                 dn_matrix[i].append(dn)
                 ds_matrix[i].append(ds)
             else:
                 dn_matrix[i].append(0.0)
                 ds_matrix[i].append(0.0)
     dn_dm = DM(names, matrix=dn_matrix)
     ds_dm = DM(names, matrix=ds_matrix)
     return dn_dm, ds_dm