Skip to content

METABOLIC Usage

Zhichao Zhou edited this page Jul 21, 2021 · 46 revisions

METABOLIC Usage:


All Required and Optional Flags:

To view the options that METABOLIC-C.pl and METABOLIC-G.pl have, please type:

perl METABOLIC-G.pl -help
perl METABOLIC-C.pl -help
  • -in-gn [required if you are starting from nucleotide fasta files] Defines the location of the FOLDER containing the genome nucleotide fasta files ending with ".fasta" to be run by this program
  • -in [required if you are starting from faa files] Defines the location of the FOLDER containing the genome amino acid files ending with ".faa" to be run by this program
  • -r [required] Defines the path to a text file containing the location of paried reads
  • -rt [optional] Defines the option to use "metaG" or "metaT" to indicate whether you use the metagenomic reads or metatranscriptomic reads (default: 'metaG'). Only required when using METABOLIC-C
  • -t [optional] Defines the number of threads to run the program with (Default: 20)
  • -m-cutoff [optional] Defines the fraction of KEGG module steps present to designate a KEGG module as present (Default: 0.75)
  • -kofam-db [optional] Defines the use of the full ("full") or reduced ("small") KOfam database by the program (Default: 'full'). "small" KOfam database only contains KOs present in KEGG module, using this setting will significantly reduce hmmsearch running time.
  • -p [optional] Defines the prodigal method used to annotate ORFs ("meta" or "single")(Default: "meta")
  • -o [optional] Defines the output directory to be created by the program (Default: current directory)
  1. The directory specified by the "-in-gn" flag should contain nucleotide sequences for your genomes with the file extension ".fasta". If you are supplying amino acid sequences for each genome, these should be contained within a directory and have the file extension ".faa", and you will be using the "-in" option instead. Ensure that the fasta headers of each .fasta or .faa file is unique, and that your file names do not contains spaces (suggest to only use alphanumeric characters and underscores in the file names). If you want to use METABOLIC-C, only "fasta" files are allowed to perform the good analysis.
  2. The "-r" flag allows input of a text file defining the path of metagenomic reads (if running METABOLIC-C). The metagenomic reads refer to the metagenomic read datasets that you used to generate the MAGs. Try to confirm that you are using unzipped fastq files instead of zipped files before you run METABOLIC-C. Sets of paired reads are entered in one line, separated by a ",". A sample for this text file is as follows:
#Read pairs: 
SRR3577362_sub_1.fastq,SRR3577362_sub_2.fastq
SRR3577362_sub2_1.fastq,SRR3577362_sub2_2.fastq

Note that the two different sets of paired reads are separated by a line return (new line), and two reads in each line are separated by a "," but not " ," or " , " (no spaces before or after comma).

Running Test Data:

The main METABOLIC directory also contains a set of 5 genomes and one set of paired metagenomic reads, which can be used to test whether METABOLIC-G and METABOLIC-C were installed correctly. These genomes and reads can be found within the directory METABOLIC_test_files/, which is contained within the METABOLIC program directory.

METABOLIC-C.pl and METABOLIC-G.pl can be run with the test data by using the -test true function of METABOLIC:

perl METABOLIC-G.pl -test true

perl METABOLIC-C.pl -test true


How To Run METABOLIC:

The main scripts that should be used to run the program are METABOLIC-G.pl or METABOLIC-C.pl.

In order to run METABOLIC-G starting from nucleotide sequences, AT LEAST the following flags should be used for METABOLIC-G:

perl METABOLIC-G.pl -in-gn [path_to_folder_with_genome_files] -o [output_directory_to_be_created]

  Note that you will use "-in-gn" to input your genome files (nucleotide sequences) containing folder

In order to run METABOLIC-G starting from amino acid sequences, AT LEAST the following flags should be used for METABOLIC-G:

perl METABOLIC-G.pl -in [path_to_folder_with_genome_files] -o [output_directory_to_be_created]

  Note that you will use "-in" to input your genome files (amino acid sequences) containing folder

In order to run METABOLIC-C, AT LEAST the following flags should be used for METABOLIC-C:

perl METABOLIC-C.pl -in-gn [path_to_folder_with_genome_files] -r [path_to_list_of_paired_reads] -o [output_directory_to_be_created]


METABOLIC output files:

Output Files Overview:

Output File File Description Generated by METABOLIC-C Generated by METABOLIC-G
All_gene_collections_mapped.depth.txt The gene depth of all input genes X
Each_HMM_Amino_Acid_Sequence/ The faa collection for each hmm file X X
intermediate_files/ The hmmsearch, peptides (MEROPS), CAZymes (dbCAN2), and GTDB-Tk (only for METABOLIC-C) running intermediate files X X
KEGG_identifier_result/ The hit and result of each genome by Kofam database X X
METABOLIC_Figures/ All figures output from the running of METABOLIC X X
METABOLIC_Figures_Input/ All input files for R-generated diagrams X X
METABOLIC_result_each_spreadsheet/ TSV files representing each sheet of the created METABOLIC_result.xlsx file X X
MN-score_result/ The resulted table for MN-score X
METABOLIC_result.xlsx The resulting excel file of METABOLIC X X

Output Files Detailed:

  • METABOLIC result table

This spreadsheet has 6 sheets:

  1. "HMMHitNum" = Presence or absence of custom HMM profiles within each genome, the number of times the HMM profile was identified within a genome, and the ORF(s) that represent the identified protein.
  2. "FunctionHit" = Presence or absence of sets of proteins which were identified and displayed as separate proteins in the sheet titled "HMMHitNum". For each genome, the functions are identified as "Present" or "Absence".
  3. "KEGGModuleHit" = Annotation of each genome with modules from the KEGG database organized by metabolic category. For each genome, the functions are identified as "Present" or "Absence".
  4. "KEGGModuleStepHit" = Presence or absence of modules from the KEGG database within each genome separated into the steps that make up the module. For each genome, the functions are identified as "Present" or "Absence".
  5. "dbCAN2Hit" = The dbCAN2 annotation results against all genomes (CAZy numbers and hits). For each genome, there are two distinct columns, which show the number of times a CAZy was identified and what ORF(s) represent the protein.
  6. "MEROPSHit" = The MEROPS peptidase searching result (MEROPS peptidase numbers and hits). For each genome, there are two distinct columns, which show the number of times a peptidase was identified and what ORF(s) represent the protein.
  • Each HMM Profile Hit Amino Acid Sequence Collection

A collection of all amino acid sequences extracted from the input genome ".faa" files that were identified as matches to the HMM profiles provided by METABOLIC.

  • KEGG identifier results

The KEGG identifier searching result - KEGG identifier numbers and hits of each genome that could be used to visualize the pathways in KEGG Mapper

  • All METABOLIC figures generated by METABOLIC-G.pl and METABOLIC-C.pl

Nutrient cycling diagrams

Both METABOLIC-G.pl and METABOLIC-C.pl will generate a folder titled Nutrient_Cycling_Diagrams/ within the METABOLIC_Figures/ directory, which will contain figures that represent nutrient cycling pathways for Sulfur, Nitrogen, Carbon, and other select pathways found within each genome. METABOLIC-C.pl also has the ability to generate overall community nutrient cycling pathways.

Although the Nutrient_Cycling_Diagrams/ directory is generated by both METABOLIC-G.pl and METABOLIC-C.pl, the files contained within the directory will be dependent on which script is used.

For both programs, METABOLIC-G.pl and METABOLIC-C.pl, the Nutrient_Cycling_Diagrams/ directory will contain the following files:

  [GenomeName].draw_sulfur_cycle_single.PDF
  [GenomeName].draw_nitrogen_cycle_single.PDF
  [GenomeName].draw_other_cycle_single.PDF
  [GenomeName].draw_carbon_cycle_single.PDF

A red arrow designates presence of a pathway step and a black arrow means absence. Note the the width of the arrows does not have any significance.

If you run METABOLIC-C.pl, the software will also calculate relative gene abundances, which will allow for generation of summary diagrams for pathways at a community scale:

  draw_sulfur_cycle_total.PDF
  draw_other_cycle_total.PDF
  draw_nitrogen_cycle_total.PDF
  draw_carbon_cycle_total.PDF

Note the the width of the arrows does not have any significance.

Sequential transformation diagram

  > Generated only by METABOLIC-C.pl are a set of figures representing metabolic handoffs within the community:

For Sequential transformation diagram, we have summarized and visualized the genome number and genome coverage (relative abundance of microorganism) of the microorganisms that were putatively involved in the sequential transformation of both important inorganic elements and organic compounds.

The resulting files are Sequential_transformation_01.pdf and Sequential_transformation_02.pdf.

Metabolic energy flow diagram

  > Generated only by METABOLIC-C.pl is a figure representing energy flow by the community:

For metabolic energy flow diagram, a Sankey diagram is generated, representing the function fractions that are contributed by various microbial groups in a given community.

The resulting file is Metabolic_energy_flow.pdf.

Metabolic network diagrams

  > Generated only by METABOLIC-C.pl are figures representing metabolic connections between different reactions that are found within the community:

For Metabolic network diagrams, diagrams representing metabolic connections of biogeochemical cycling steps at both phylum level and the whole community level will be generated.

The resulted files are placed in the directory Metabolic_network/.

  • MN-score result

For MN-score result, the table showing the MN-score (Metabolic Networking score) will be generated ("MN-score_result.txt"). The first column indicates the MN-score for each function. The rest part of the table indicates the contribution percentage of each phylum to the corresponding function.

An example was given:

Notice:

If you use metatranscriptomic reads instead of metagenomic reads in METABOLIC-C, gene coverage result will be replaced by transcript coverage [normalized into Reads Per Kilobase of transcript, per Million mapped reads (RPKM)] and all the community analyses were performed based on the transcript coverage instead. A result file of "All_gene_collections_transcript_coverage.txt" will be generated in the output directory in lieu of "All_gene_collections_gene_coverage.txt".

METABOLIC version updates:

  • v4.0 -- Jun 22, 2020 --
    METABOLIC now uses an R script to generate METABOLIC_result.xlsx, which fixes issues with the generation of a corrupt METABOLIC_result.xlsx file
    Test input data now includes both five nucleotide fasta files and one set of paired sequencing reads, allowing all capabilities of both METABOLIC-G.pl and METABOLIC-C.pl to be tested
    The MN-score table has been provided as one of the results by METABOLIC-C
    Updated the motif checking step for pmo/amo, dsrE/tusD, dsrH/tusB, and dsrF/tusC
    Updated the "reads-type" option allowing the use of metatranscriptomic reads to conduct community analysis
    Updated the script error of assigning module step presence to be the same with module step presence

  • v3.0 -- Feb 18, 2020 --
    Provide an option to let the user reduce the size of Kofam Hmm profiles (only use KOs that can be found in Modules) to speed up the calculation
    Change HMMER to v3.3 to speed up the calculation

  • v2.0 -- Nov 5, 2019 --
    Add more functions on visualization, add more annotations, make the software faster

  • v1.3 -- Sep 5, 2019 --
    Fix the output folder problem, the perl script could be called in another place instead of the original place

  • v1.2 -- Sep 5, 2019 --
    Fix the prodigal parallel run, change "working-dir" to "METABOLIC-dir"

  • v1.1 -- Sep 4, 2019 --
    Fix the parallel problem, change from hmmscan to hmmsearch, and update the "METABOLIC_template_and_database"

Clone this wiki locally