Example #1
0
    def _bootstrap(self, rep_num):
        """Infer tree from bootstrapped multiple sequence alignment.

        Parameters
        ----------
        replicated_num : int
          Unique replicate number.
        cpus : int
            Number of cpus to use.
        """
        
        rep_dir = os.path.join(self.output_dir, 'rep_%d' % rep_num)
        if not os.path.exists(rep_dir):
            os.makedirs(rep_dir)

        output_msa = os.path.join(rep_dir, 'bootstrap.afa')
        bootstrap_alignment(self.msa, output_msa)
        
        phylip_msa_file = output_msa.replace('.afa', '.phyx')
        cmd = 'seqmagick convert %s %s' % (output_msa, phylip_msa_file)
        os.system(cmd)

        log_file = os.path.join(rep_dir, 'raxml.log')
        self.run(phylip_msa_file, self.model, rep_dir, log_file, output_suffix='support')

        return True
Example #2
0
    def _producer(self, replicated_num):
        """Infer tree from bootstrapped multiple sequence alignment.

        Parameters
        ----------
        replicated_num : int
          Unique replicate number.
        """

        output_msa = os.path.join(
            self.replicate_dir,
            'bootstrap_msa.r_' + str(replicated_num) + '.fna')
        if os.path.exists(output_msa) and os.path.getsize(output_msa) > 0:
            self.logger.warning(
                'Skipping {} as it already exists.'.format(output_msa))
            return True

        output_tree = os.path.join(
            self.replicate_dir,
            'bootstrap_tree.r_' + str(replicated_num) + '.tree')
        fast_tree_output = os.path.join(
            self.replicate_dir,
            'bootstrap_fasttree.r_' + str(replicated_num) + '.out')
        if os.path.exists(
                fast_tree_output) and os.path.getsize(fast_tree_output) > 0:
            self.logger.warning(
                'Skipping {} as it already exists.'.format(fast_tree_output))
            return True

        bootstrap_alignment(self.msa, output_msa, frac=self.frac)
        fast_tree = FastTree(multithreaded=False)
        cmd = fast_tree.run(output_msa, self.base_type, self.model, self.gamma,
                            output_tree, fast_tree_output)

        return True
Example #3
0
    def _producer(self, replicated_num):
        """Infer tree from bootstrapped multiple sequence alignment.

        Parameters
        ----------
        replicated_num : int
          Unique replicate number.
        """

        output_msa = os.path.join(
            self.replicate_dir,
            'bootstrap_msa.r_' + str(replicated_num) + '.fna')
        bootstrap_alignment(self.msa, output_msa, frac=self.frac)

        fast_tree = FastTree(multithreaded=False)
        output_tree = os.path.join(
            self.replicate_dir,
            'bootstrap_tree.r_' + str(replicated_num) + '.tree')
        fast_tree_output = os.path.join(
            self.replicate_dir,
            'bootstrap_fasttree.r_' + str(replicated_num) + '.out')
        fast_tree.run(output_msa, self.base_type, self.model, output_tree,
                      fast_tree_output)

        return True
Example #4
0
    def _producer(self, replicated_num):
        """Infer tree from bootstrapped multiple sequence alignment.

        Parameters
        ----------
        replicated_num : int
          Unique replicate number.
        """

        output_msa = os.path.join(self.replicate_dir, 'bootstrap_msa.r_' + str(replicated_num) + '.fna')
        bootstrap_alignment(self.msa, output_msa, frac=self.frac)

        fast_tree = FastTree(multithreaded=False)
        output_tree = os.path.join(self.replicate_dir, 'bootstrap_tree.r_' + str(replicated_num) + '.tree')
        fast_tree_output = os.path.join(self.replicate_dir, 'bootstrap_fasttree.r_' + str(replicated_num) + '.out')
        fast_tree.run(output_msa, self.base_type, self.model, self.gamma, output_tree, fast_tree_output)

        return True
Example #5
0
    def _bootstrap(self, replicated_num):
        """Infer tree from bootstrapped multiple sequence alignment.

        Parameters
        ----------
        replicated_num : int
          Unique replicate number.
        cpus : int
            Number of cpus to use.
        """

        output_msa = os.path.join(self.replicate_dir, 'bootstrap.msa.' + str(replicated_num) + '.fna')
        bootstrap_alignment(self.msa, output_msa)

        output_tree = os.path.join(self.replicate_dir, 'bootstrap.tree.' + str(replicated_num) + '.tre')
        fast_tree_output = os.path.join(self.replicate_dir, 'bootstrap.fasttree.' + str(replicated_num) + '.out')
        self.run(output_msa, self.seq_type, self.model, output_tree, fast_tree_output)

        return True
Example #6
0
    def _bootstrap(self, rep_num):
        """Infer tree from bootstrapped multiple sequence alignment.

        Parameters
        ----------
        replicated_num : int
          Unique replicate number.
        cpus : int
            Number of cpus to use.
        """

        rep_dir = os.path.join(self.output_dir, 'rep_%d' % rep_num)
        if not os.path.exists(rep_dir):
            os.makedirs(rep_dir)

        output_msa = os.path.join(rep_dir, 'bootstrap.afa')
        bootstrap_alignment(self.msa, output_msa)

        output_tree = os.path.join(rep_dir, 'bootstrap.tree')
        log_file = os.path.join(rep_dir, 'fasttree.log')
        self.run(output_msa, self.seq_type, self.model, output_tree, log_file)

        return True