Skip to content
This repository has been archived by the owner on Nov 9, 2023. It is now read-only.

Latest commit

 

History

History
60 lines (32 loc) · 1.8 KB

filter_tree.rst

File metadata and controls

60 lines (32 loc) · 1.8 KB

filter_tree.py

filter_tree.py -- This script prunes a tree based on a set of tip names

Description:

This script takes a tree and a list of OTU IDs (in one of several supported formats) and outputs a subtree retaining only the tips on the tree which are found in the inputted list of OTUs (or not found, if the --negate option is provided).

Usage: filter_tree.py [options]

Input Arguments:

Note

[REQUIRED]

-i, --input_tree_filepath

Input tree filepath

-o, --output_tree_filepath

Output tree filepath

[OPTIONAL]

-n, --negate

If negate is True will remove input tips/seqs, if negate is False, will retain input tips/seqs [default: False]

-t, --tips_fp

A list of tips (one tip per line) or sequence identifiers (tab-delimited lines with a seq identifier in the first field) which should be retained [default: None]

-f, --fasta_fp

A fasta file where the seq ids should be retained [default: None]

Output:

Output is a pruned tree in newick format.

Prune a tree to include only the tips in tips_to_keep.txt:

filter_tree.py -i rep_seqs.tre -t tips_to_keep.txt -o pruned.tre

Prune a tree to remove the tips in tips_to_remove.txt. Note that the -n/--negate option must be passed for this functionality:

filter_tree.py -i rep_seqs.tre -t tips_to_keep.txt -o negated.tre -n

Prune a tree to include only the tips found in the fasta file provided:

filter_tree.py -i rep_seqs.tre -f fast_f.fna -o pruned_fast.tre