METAPHLAN2_STRAINER(1)

πŸ’– METAPHLAN2_STRAINER(1) β€” the manual page, but make it make sense πŸ’–

okay bestie, sit down, hydrate, and let me tell you about metaphlan2_strainer, aka METAgenomic PHyLogenetic ANalysis for metagenomic taxonomic profiling (strainer). yes the name is a mouthful, no we are not changing it, it's iconic. 🧚


✨ SYNOPSIS ✨

metaphlan2_strainer.py [-h] --ifn_samples IFN_SAMPLES [IFN_SAMPLES ...]
--mpa_pkl MPA_PKL --output_dir OUTPUT_DIR [--ifn_markers IFN_MARKERS]
[--nprocs_main NPROCS_MAIN] [--nprocs_load_samples NPROCS_LOAD_SAMPLES]
[--nprocs_align_clean NPROCS_ALIGN_CLEAN] [--nprocs_raxml NPROCS_RAXML]
[--bootstrap_raxml BOOTSTRAP_RAXML] [--ifn_ref_genomes IFN_REF_GENOMES
[IFN_REF_GENOMES ...]]  [--N_in_marker N_IN_MARKER]
[--marker_strip_length MARKER_STRIP_LENGTH] [--marker_in_clade
MARKER_IN_CLADE] [--sample_in_clade SAMPLE_IN_CLADE] [--sample_in_marker
SAMPLE_IN_MARKER] [--gap_in_trailing_col GAP_IN_TRAILING_COL]
[--gap_trailing_col_limit GAP_TRAILING_COL_LIMIT] [--gap_in_internal_col
GAP_IN_INTERNAL_COL] [--gap_in_sample GAP_IN_SAMPLE] [--N_col N_COL]
[--N_count N_COUNT] [--long_gap_length LONG_GAP_LENGTH]
[--long_gap_percentage LONG_GAP_PERCENTAGE] [--p_value P_VALUE]
[--clades CLADES [CLADES ...]]  [--marker_list_fn MARKER_LIST_FN]
[--print_clades_only] [--alignment_program {muscle,mafft}]
[--relaxed_parameters] [--relaxed_parameters2] [--keep_alignment_files]
[--keep_full_alignment_files] [--save_sample2fullfreq] [--use_threads]

like, look at all those flags. she's doing the MOST. πŸ’…


🌸 DESCRIPTION 🌸

so metaphlan2_strainer is a computational tool for tracking individual strains across a large set of samples. the way that it eats is genuinely unmatched, fr fr.

the input? a whole set of metagenomic samples. the output? a set of phylogenetic. yes, "a set of phylogenetic", that's what it says, we're keeping it, don't look at me. 😭

for each sample, metaphlan2_strainer extracts the strain of a specific species by merging and concatenating all reads mapped against that species' markers in the MetaPhlAn2 database. that's the whole vibe. main character energy. πŸ‘‘


πŸŽ€ OPTIONS πŸŽ€

optional arguments (they're optional, but are they really πŸ’€)

  • -h, --help β€” shows this help message and dips. classic.
  • --ifn_samples IFN_SAMPLES [IFN_SAMPLES ...] β€” the list of sample files (space separated). the wildcard can also be used. yes queen, glob it up. 🌈
  • --mpa_pkl MPA_PKL β€” the database of metaphlan3.py. (yes, it says metaphlan3 in a metaphlan2 tool, i don't make the rules 🫢)
  • --output_dir OUTPUT_DIR β€” the output directory. where the magic lands. ✨
  • --ifn_markers IFN_MARKERS β€” the marker file, in fasta format.
  • --nprocs_main NPROCS_MAIN β€” the number of processors used for the main threads. default 1. one. single. solitary processor. she's humble like that. πŸ™ˆ
  • --nprocs_load_samples NPROCS_LOAD_SAMPLES β€” the number of processors used for loading samples. default nprocs_main.
  • --nprocs_align_clean NPROCS_ALIGN_CLEAN β€” the number of processors used for aligning and cleaning markers. default nprocs_main.
  • --nprocs_raxml NPROCS_RAXML β€” the number of processors used for running raxml. default nprocs_main.
  • --bootstrap_raxml BOOTSTRAP_RAXML β€” the number of runs for bootstrapping when building the tree. default 0.
  • --ifn_ref_genomes IFN_REF_GENOMES [IFN_REF_GENOMES ...] β€” the reference genome file names. they are separated by spaces.
  • --N_in_marker N_IN_MARKER β€” the consensus markers with the rate of N nucleotides greater than this threshold are removed. default 0.2.
  • --marker_strip_length MARKER_STRIP_LENGTH β€” the number of nucleotides that will be deleted from each of the two ends of a marker. default 50.
  • --marker_in_clade MARKER_IN_CLADE β€” in each sample, the clades with the rate of present markers less than this threshold are removed. default 0.8.
  • --sample_in_clade SAMPLE_IN_CLADE β€” only clades present in at least sample_in_clade samples are kept. default 2.
  • --sample_in_marker SAMPLE_IN_MARKER β€” if the percentage of samples that a marker is present in is less than this threshold, that marker is removed. default 0.8.
  • --gap_in_trailing_col GAP_IN_TRAILING_COL β€” if the number of the trailing nucleotide columns in aligned markers with the percentage of gaps greater than gap_in_trailing_col is less than gap_trailing_col_limit, these columns will be removed. default 0.2.
  • --gap_trailing_col_limit GAP_TRAILING_COL_LIMIT β€” if the number of the trailing nucleotide columns in aligned markers with the percentage of gaps greater than gap_in_trailing_col is less than gap_trailing_col_limit, these columns will be removed. default 101. (yes this description is the same as the one above, they're a matching set, leave them alone πŸ’–)
  • --gap_in_internal_col GAP_IN_INTERNAL_COL β€” the internal nucleotide columns in aligned markers with the percentage of gaps greater than gap_in_internal_col will be removed. default 0.3.
  • --gap_in_sample GAP_IN_SAMPLE β€” the samples with full sequences from all markers and having the percentage of gaps greater than this threshold will be removed. default 0.2.
  • --N_col N_COL β€” in aligned markers, if the percentage of nucleotide columns containing more than N_count Ns is less than this threshold, these columns will be removed. default 0.8.
  • --N_count N_COUNT β€” in aligned markers, if the percentage of nucleotide columns containing more than N_count Ns is less than the N_col threshold, these columns will be removed. default 0.
  • --long_gap_length LONG_GAP_LENGTH β€” in each concatenated sequence of a sample, sequential gap positions are a gap group. a gap group with length greater than this threshold is considered a long gap group. if the ratio between the number of unique positions in all long gap groups and the concatenated sequence length is less than long_gap_percentage, these positions will be removed from all concatenated sequences. default 2.
  • --long_gap_percentage LONG_GAP_PERCENTAGE β€” combining this threshold with long_gap_length to remove long gaps. default 0.8.
  • --p_value P_VALUE β€” the p_value to reject a non-polymorphic site. default 0.05.
  • --clades CLADES [CLADES ...] β€” the clades (space separated) for which the script will compute the marker alignments in fasta format and the phylogenetic trees. if a file name is specified, the clade list in that file β€” where each clade name is on a line β€” will be read. default "automatically identify all clades". she's independent, she doesn't need you to pick. πŸ¦‹
  • --marker_list_fn MARKER_LIST_FN β€” the file name containing the list of considered markers. the other markers will be discarded. default "None".
  • --print_clades_only β€” only print the potential clades and stop without building any tree. this option is useful when you want to check quickly all possible clades and rerun only for some specific ones. default "False".
  • --alignment_program {muscle,mafft} β€” the alignment program. default "muscle".
  • --relaxed_parameters β€” sets marker_in_clade=0.5, sample_in_marker=0.5, N_in_marker=0.5, gap_in_sample=0.5. default "False". she's chill, she's relaxed. 😌
  • --relaxed_parameters2 β€” sets marker_in_clade=0.2, sample_in_marker=0.2, N_in_marker=0.8, gap_in_sample=0.8. default "False". even more relaxed. she's on vacation. πŸ–οΈ
  • --keep_alignment_files β€” keep the alignment files of all markers before the cleaning step.
  • --keep_full_alignment_files β€” keep the alignment files of all markers before truncating the starting and ending parts, and before the cleaning step. this is equivalent to --keep_alignment_files --marker_strip_length 0.
  • --save_sample2fullfreq β€” save sample2fullfreq to a msgpack file sample2fullfreq.msgpack.
  • --use_threads β€” use multithreading. default "Use multiprocessing".
⚠️ quick vibe check: those cleaning thresholds are not decorative, bestie. they genuinely delete markers, columns, positions and samples. --keep_alignment_files and --keep_full_alignment_files exist precisely so you can peep at what's happening before stuff gets removed. and --keep_full_alignment_files is literally --keep_alignment_files plus --marker_strip_length 0, no cap. πŸ’€

πŸ‘‘ AUTHOR πŸ‘‘

this manpage was written by Andreas Tille for the Debian distribution, and can be used for any other usage of the program. shoutout Andreas, doing the community a solid. 🫢


and that's the whole page, babe. this was metaphlan2_strainer version 2.5.0, dating all the way back to July 2016 β€” vintage, iconic, still eating. periodt. πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from