{ "cells": [ { "cell_type": "markdown", "id": "3a8c3cc2-08a9-436d-9d0a-3f83ba613975", "metadata": { "slideshow": { "slide_type": "slide" }, "tags": [] }, "source": [ "# Meta'omics for Ocean Science\n", "\n", "Ocean Hack Week 2023 Tutorial by Julia M Brown\n", "\n", "![scales](./tutorial_images/rainbow_satellite_to_microbe.png) \n", "\n", "With thanks to the following for content and inspiration: \n", "[Greg Gavelis](https://github.com/ggavelis), [Joe Brown](https://github.com/brwnj), [Maria Pachiadaki](https://github.com/microbiaki), [Ramunas Stepanauskas](https://www.bigelow.org/about/people/rstepanauskas.html), [MerenLab](https://merenlab.org/), [Kaiju Team](https://bioinformatics-centre.github.io/kaiju/), [Cath Mitchell](https://github.com/MarineOpticsLab)\n", "\n" ] }, { "cell_type": "markdown", "id": "4a33a281-5db8-4d59-867b-de2d403fcc34", "metadata": {}, "source": [ "### What is 'omics data?\n", "\n", "* Data on biological molecules \n", "* 'Meta' refers to collecting and processing samples in bulk \n", "* Data often focused on specific **unicellular** size fractions \n", "\n", "### How is it generated?\n", "\n", "* Collection of sample in bulk. \n", "* For planktonic microbes, samples are collected based on a specific size fraction that targets different microbial groups\n", " * e.g. bacteria and archaea, protists, phytoplankton, viruses \n", "* Nucleic acids, proteins or other target molecules extracted and sequenced \n", "* For nucleotide data (DNA + RNA), samples often sequenced via Illumina sequencing\n", " * generates short __paired end__ reads \n", " * reads can be characterized directly or used to assemble larger __contiguous sequences__\n", "\n", "![omics](./tutorial_images/metaXomics_diagram.png) \n", "\n", "### It can tell us the who and what of microbial communities\n", "\n", "**Metagenome (DNA)** : Presence and potential \n", "**Metatranscriptome (RNA)**: Activity \n", "\n", "**Taxonomy:** \n", "\n", "* What microbes are present -- DNA\n", "* Which microbes are active -- RNA\n", "\n", "**Function:**\n", "\n", "* What is the metabolic potential? -- DNA\n", "* What processes are being carried out? -- RNA\n", "\n", "### What does it look like? \n", "\n", "* fastq - raw sequence read data with quality information included\n", "* fasta - sequence data, can be contiguous sequences, open reading frames (i.e. coding sequences) or protein sequences\n", "\n" ] }, { "cell_type": "markdown", "id": "1e0fe7e5-b7ae-4c6f-a11c-45c18cfb7ab5", "metadata": { "tags": [] }, "source": [ "### How can we use raw reads?\n", "\n", "**Read profiling** is one of the most commonly used processes in 'omics analysis. It is applied to access the relative abundance of taxonomic groups within metagenomic datasets (when using DNA metagenomes) or to estimate the expression of different microbial taxa (when RNA metatranscriptomes are used).\n", "\n", "In a nutshell short reads are aligned to a genomic reference sequences, which have taxonomic information assigned to them that may be assigned to the reads.\n", "\n", "![recruitment](./tutorial_images/01-metagenomic-read-recruitment-simple.gif) \n", "(Thank you [MerenLab](https://merenlab.org/) for the animation)" ] }, { "cell_type": "markdown", "id": "86297889-8a11-4b44-940b-a1d50c54107c", "metadata": {}, "source": [ "# Read classification tools\n", "\n", "# [Kaiju](https://kaiju.binf.ku.dk/server)\n", "![Kaiju](https://kaiju.binf.ku.dk/images/kaiju3_header.gif)\n", "\n", "**Also: [Kraken2](https://github.com/DerrickWood/kraken2/)**\n", "\n", "These workflows are wicked fast!\n", "\n", "### How do they work?\n", "\n", "**Database** \n", "Database consists of a collection of translated proteins mapped to microbial genomes.\n", "\n", "\"p2g\"\n", "\n", "### Short read alignment\n", "\n", "Reads are translated into protein sequences and aligned to reference protein sequences. Best matches to proteins are then taxonomically assigned based on protein's membership in microbial genomes.\n", "\n", "![kaiju_diagram](./tutorial_images/short_read_align.png)" ] }, { "cell_type": "markdown", "id": "06b27e46-297a-49c7-825c-35f6d74d5862", "metadata": {}, "source": [ "## Tools are as good as your reference database\n", "\n", "Kaiju and other classifiers rely on genome databases that primarily contain genomes from isolated microbes and genomes assembled from metagenomes ('MAGs').\n", "\n", "**Available Standard Kaiju Databases** \n", "\"ncbi\"\n", "\n", "**nr**: Non-redundant proteins from bacteria, archaea and viruses \n", "**RefSeq**: Curated bacterial, archaeal and viral genomes from NCBI\n", "\n", "\"progenomes\" \n", "\n", "**ProGenomes**: Database of microbial genomes including MAGs from diverse environments\n", "\n", "**Note:** Kaiju has other available databases that could be useful for your environment or organisms of interest. See their website for more options. \n", "\n", "**Database Limitations**: Despite the depth of these collections, they leave stones unturned. Microbial genomic diversity is high in marine systems and genomes assembled from short reads represent only a fraction of the microbial diversity present in the ocean!\n", "\n", "## SAGs\n", "\n", "Single Cell Genomics is another type of 'omics data that is well suited for reference genomic data. It consists of DNA sequence data generated from the DNA present in single cells. Each set of data from each cell is referred to as a __Single Amplified Genome (i.e. SAG)__. SAGs represent real biological units recovered from samples, and contain genomic information specific to individuals.\n", "\n", "\"sag\"\n", "\n", "## GORG-Tropics: A collection of reference genomes from individual cells from the Tropical and Sub-tropical Epipelagic Ocean\n", "\n", "GORG-Tropics is more representative of global ocean microbes than MAGs or currently available reference genomes*.\n", "\n", "*I am not sure if GORG-Tropics has been integrated into ProGenomes or not\n", "\n", "![GORG-Figure2](https://ars.els-cdn.com/content/image/1-s2.0-S0092867419312735-gr2.jpg) \n", "\n", "\n", "GORG-Tropics is more accurate and sensitive than default databases used for read classification by Kaiju when analyzing marine epipelagic samples. When GORG-Tropics used as a database for reads from similar environments, many more were able to be correctly classified. \n", "\n", "![GORG-Figure](https://ars.els-cdn.com/content/image/1-s2.0-S0092867419312735-gr6.jpg) \n", "\n", "The other advantage of using a tailored database is that it takes up less storage space :)\n", "\n", "\n", "### Database Setup\n", "\n", "For this tutorial we'll be using the GORG-Tropics database. This database is published alongside [this publication](https://www.sciencedirect.com/science/article/pii/S0092867419312735), and in a data repository [here](https://osf.io/pcwj9/).\n", "\n", "Specific database files used for this tutorial are: \n", "[GORG_v1_CREST.fmi](https://osf.io/a3428) \n", "[nodes.dmp](https://osf.io/a8bm5) \n", "[names.dmp](https://osf.io/cqrh4) \n", "\n", "Note that I am going to show you this workflow in steps using kaiju, BUT the entire kaiju workflow using the GORG-Tropics database is packaged into a docker/singularity container and can be run with nextflow for easy access and for scalability. You can find it [here](https://github.com/BigelowLab/gorg-classifier). \n", "\n", "The GORG-Classifier provides additional functionality beyond Kaiju to assign **functional annotations** to reads based on what specific gene was matched in the GORG-Tropics Database. This is unique to this tool. \n", "\n", "Today, I'm going to go over taxonomic annotation of reads." ] }, { "cell_type": "markdown", "id": "e0a86db9-7534-4fe9-aa48-440bd76afa7a", "metadata": {}, "source": [ "## Data Prep\n", "\n", "We will be running Kaiju on a collection of epipelagic metagenomes from the Bermuda Atlantic Time Series using version 1 of the GORG-Tropics database.\n", "\n", "\n", "For this lesson, we look at microbial community dynamics over time at BATs using short read alignment with Kaiju against the GORG-Tropics database.\n", "\n", "The metagenomes we will use are a small subset of metagenomes reported in [this](https://www.nature.com/articles/sdata2018176) publication. These metagenomes are available in NCBI's Short Read Archive (sra) through NCBI project ID [PRJNA385855](https://www.ncbi.nlm.nih.gov/bioproject?term=PRJNA385855). I've downloaded a metadata sheet with all sra metagenomes from this bioproject to: ./data/PRJNA385855_sra_metadata.csv\n", "\n", "Let's check this table out, and I'll show you which metagenomes I selected." ] }, { "cell_type": "code", "execution_count": 90, "id": "24c6965e-3e79-4067-b8e8-19eeaceef0a3", "metadata": { "tags": [] }, "outputs": [], "source": [ "import glob\n", "\n", "import pandas as pd\n", "import numpy as np\n", "\n", "import matplotlib.pyplot as plt\n", "import seaborn as sns\n", "import os.path as op\n", "\n", "from sklearn.decomposition import PCA\n", "from collections import Counter" ] }, { "cell_type": "code", "execution_count": 1, "id": "25776333-d33e-47be-8ad3-f97952ad5fc3", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RunAssay TypeAvgSpotLenBasesBioProjectBioSampleBioSampleModelbottle_idBytesCenter Name...lat_lonLibrary NameLibraryLayoutLibrarySelectionLibrarySourceOrganismPlatformReleaseDateSample NameSRA Study
0SRR6507277WGS30016133582100PRJNA385855SAMN08390922MIMS.me,MIGS/MIMS/MIMARKS.water21402003086618578156MIT...22.75 N 158 WS0627PAIREDRANDOMMETAGENOMICmarine metagenomeILLUMINA2018-05-01T00:00:00ZS0627SRP109831
1SRR6507278WGS30015874959000PRJNA385855SAMN08390923MIMS.me,MIGS/MIMS/MIMARKS.water21602003046562862443MIT...22.75 N 158 WS0628PAIREDRANDOMMETAGENOMICmarine metagenomeILLUMINA2018-05-01T00:00:00ZS0628SRP109831
2SRR6507279WGS30015069825300PRJNA385855SAMN08390924MIMS.me,MIGS/MIMS/MIMARKS.water10248005036265839401MIT...31.66 N 64.16 WS0629PAIREDRANDOMMETAGENOMICmarine metagenomeILLUMINA2018-05-01T00:00:00ZS0629SRP109831
3SRR6507280WGS30025807308000PRJNA385855SAMN08390925MIMS.me,MIGS/MIMS/MIMARKS.water102520051010523504402MIT...31.66 N 64.16 WS0630PAIREDRANDOMMETAGENOMICmarine metagenomeILLUMINA2018-05-01T00:00:00ZS0630SRP109831
4SRR5720219WGS3006713331000PRJNA385855SAMN07137016MIMS.me,MIGS/MIMS/MIMARKS.water16402011172811014041MIT...22.75 N 158 WS0519PAIREDRANDOMMETAGENOMICmarine metagenomeILLUMINA2018-05-01T00:00:00ZS0519SRP109831
\n", "

5 rows × 36 columns

\n", "
" ], "text/plain": [ " Run Assay Type AvgSpotLen Bases BioProject BioSample \\\n", "0 SRR6507277 WGS 300 16133582100 PRJNA385855 SAMN08390922 \n", "1 SRR6507278 WGS 300 15874959000 PRJNA385855 SAMN08390923 \n", "2 SRR6507279 WGS 300 15069825300 PRJNA385855 SAMN08390924 \n", "3 SRR6507280 WGS 300 25807308000 PRJNA385855 SAMN08390925 \n", "4 SRR5720219 WGS 300 6713331000 PRJNA385855 SAMN07137016 \n", "\n", " BioSampleModel bottle_id Bytes Center Name ... \\\n", "0 MIMS.me,MIGS/MIMS/MIMARKS.water 2140200308 6618578156 MIT ... \n", "1 MIMS.me,MIGS/MIMS/MIMARKS.water 2160200304 6562862443 MIT ... \n", "2 MIMS.me,MIGS/MIMS/MIMARKS.water 1024800503 6265839401 MIT ... \n", "3 MIMS.me,MIGS/MIMS/MIMARKS.water 1025200510 10523504402 MIT ... \n", "4 MIMS.me,MIGS/MIMS/MIMARKS.water 1640201117 2811014041 MIT ... \n", "\n", " lat_lon Library Name LibraryLayout LibrarySelection LibrarySource \\\n", "0 22.75 N 158 W S0627 PAIRED RANDOM METAGENOMIC \n", "1 22.75 N 158 W S0628 PAIRED RANDOM METAGENOMIC \n", "2 31.66 N 64.16 W S0629 PAIRED RANDOM METAGENOMIC \n", "3 31.66 N 64.16 W S0630 PAIRED RANDOM METAGENOMIC \n", "4 22.75 N 158 W S0519 PAIRED RANDOM METAGENOMIC \n", "\n", " Organism Platform ReleaseDate Sample Name SRA Study \n", "0 marine metagenome ILLUMINA 2018-05-01T00:00:00Z S0627 SRP109831 \n", "1 marine metagenome ILLUMINA 2018-05-01T00:00:00Z S0628 SRP109831 \n", "2 marine metagenome ILLUMINA 2018-05-01T00:00:00Z S0629 SRP109831 \n", "3 marine metagenome ILLUMINA 2018-05-01T00:00:00Z S0630 SRP109831 \n", "4 marine metagenome ILLUMINA 2018-05-01T00:00:00Z S0519 SRP109831 \n", "\n", "[5 rows x 36 columns]" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "df = pd.read_csv(\"./data/PRJNA385855_sra_metadata.csv\", sep = \",\")\n", "\n", "df.head()" ] }, { "cell_type": "markdown", "id": "1c83c861-0960-46fd-a4b0-7aedda241e7d", "metadata": {}, "source": [ "There's a lot of information here, for now, we just need the 'Run' ID so that we can use it to grab data from NCBI, as well as the collection date and depth." ] }, { "cell_type": "code", "execution_count": 2, "id": "b0da40e5-3771-4593-bb43-da145f615afe", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "There are 21 metagenomes\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
RunCollection_datecruise_idBioSampleDepth
74SRR57202332003-02-21BATS173SAMN071370791m
14SRR57202382003-03-22BATS174SAMN071370821m
119SRR57203272003-04-22BATS175SAMN0713706410m
99SRR57202832003-05-20BATS176SAMN071371031m
75SRR57202352003-07-15BATS178SAMN0713708510m
38SRR57202862003-08-12BATS179SAMN0713708810m
64SRR57203322003-10-07BATS181SAMN071370671m
96SRR57202762003-11-04BATS182SAMN071371061m
90SRR57202622003-12-02BATS183SAMN071371091m
124SRR57203382004-01-27BATS184SAMN071370701m
117SRR57203222004-02-24BATS185SAMN071371211m
66SRR57203372004-03-23BATS186SAMN071370731m
22SRR57202562004-04-21BATS187SAMN071370911m
87SRR57202572004-05-18BATS188SAMN0713711210m
89SRR57202602004-06-15BATS189SAMN0713711510m
57SRR57203212004-08-17BATS191SAMN071371181m
83SRR57202512004-09-14BATS192SAMN071370941m
49SRR57203072004-10-13BATS193SAMN071370971m
97SRR57202782004-11-12BATS194SAMN071371001m
127SRR57203422004-12-08BATS195SAMN071370761m
2SRR65072792009-07-14BATS248SAMN0839092410m
\n", "
" ], "text/plain": [ " Run Collection_date cruise_id BioSample Depth\n", "74 SRR5720233 2003-02-21 BATS173 SAMN07137079 1m\n", "14 SRR5720238 2003-03-22 BATS174 SAMN07137082 1m\n", "119 SRR5720327 2003-04-22 BATS175 SAMN07137064 10m\n", "99 SRR5720283 2003-05-20 BATS176 SAMN07137103 1m\n", "75 SRR5720235 2003-07-15 BATS178 SAMN07137085 10m\n", "38 SRR5720286 2003-08-12 BATS179 SAMN07137088 10m\n", "64 SRR5720332 2003-10-07 BATS181 SAMN07137067 1m\n", "96 SRR5720276 2003-11-04 BATS182 SAMN07137106 1m\n", "90 SRR5720262 2003-12-02 BATS183 SAMN07137109 1m\n", "124 SRR5720338 2004-01-27 BATS184 SAMN07137070 1m\n", "117 SRR5720322 2004-02-24 BATS185 SAMN07137121 1m\n", "66 SRR5720337 2004-03-23 BATS186 SAMN07137073 1m\n", "22 SRR5720256 2004-04-21 BATS187 SAMN07137091 1m\n", "87 SRR5720257 2004-05-18 BATS188 SAMN07137112 10m\n", "89 SRR5720260 2004-06-15 BATS189 SAMN07137115 10m\n", "57 SRR5720321 2004-08-17 BATS191 SAMN07137118 1m\n", "83 SRR5720251 2004-09-14 BATS192 SAMN07137094 1m\n", "49 SRR5720307 2004-10-13 BATS193 SAMN07137097 1m\n", "97 SRR5720278 2004-11-12 BATS194 SAMN07137100 1m\n", "127 SRR5720342 2004-12-08 BATS195 SAMN07137076 1m\n", "2 SRR6507279 2009-07-14 BATS248 SAMN08390924 10m" ] }, "execution_count": 2, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# selecting surface samples collected from BATS\n", "surface_bats = df[df['cruise_id'].str.contains('BATS') & df['Depth'].isin(['10m','1m'])][['Run','Collection_date','cruise_id','BioSample','Depth']].sort_values(by = 'Collection_date')\n", "\n", "print('There are', len(surface_bats), 'metagenomes')\n", "surface_bats" ] }, { "cell_type": "markdown", "id": "779a5a99-3513-45e8-9720-3c975d021d3d", "metadata": {}, "source": [ "Let's just focus on one year to make things simple.\n" ] }, { "cell_type": "code", "execution_count": 3, "id": "a83228cb-f5f3-43ee-aeee-cbff91d2f6a5", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "11" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# grab only samples from 2004\n", "# naming it mgoi for 'metagenomes of interest'\n", "mgoi = surface_bats[surface_bats['Collection_date'].str.contains('2004')]\n", "len(mgoi)" ] }, { "cell_type": "code", "execution_count": 4, "id": "c5938cf5-7e80-4c87-9612-336d6d3b08eb", "metadata": { "tags": [] }, "outputs": [], "source": [ "# going to save this table to file\n", "mgoi.to_csv(\"./data/bats_metagenomes_of_interest.csv\", index=False)\n", "\n", "# I also saved a text file with one metagenome ID per line for downloading these metagenomes with a shell script\n", "with open('data/metagenomes_to_download.txt', 'w') as oh:\n", " for run in mgoi['Run']:\n", " print(run, file = oh)" ] }, { "cell_type": "markdown", "id": "aa9ca13a-de4e-420e-a3ba-4e0abdc26493", "metadata": { "tags": [] }, "source": [ "I next downloaded these metagenomes from NCBI using a package called [fastq-dl](https://github.com/rpetit3/fastq-dl). These metagenomes are large, and downloading them takes a while, so I did this overnight using a small shell script:\n", "\n", "```\n", "cd ./data/\n", "\n", "while read p; \n", " do fastq-dl -a $p --provider sra; \n", "done < metagenomes_to_download.txt\n", "```\n", "\n", "This downloads a set of paired reads files that look like this:\n", "\n", "```\n", "{RunID}_1.fastq.gz\n", "{RunID_2}.fastq.gz\n", "```\n", "\n", "Each file is between 1 and 3G in size. For the purposes of this tutorial, I subsampled these paired metagenomes down to 100000k reads per metagenome using a package called [seqtk](https://github.com/lh3/seqtk). I ran this in a jupyter notebook. The script I used to do this was:\n", "\n", "```\n", "%%python\n", "import glob\n", "\n", "ffqs = glob.glob(\"*_1.fastq.gz\")\n", "\n", "for f in ffqs:\n", " r = f.replace('_1','_2')\n", " \n", " outf = \"./subsampled_metagenomes/{}\".format(f.replace(\"_1.fastq.gz\",\n", " '_100ksub_1.fastq.gz'))\n", " outr = \"./subsampled_metagenomes/{}\".format(r.replace(\"_2.fastq.gz\",\n", " '_100ksub_2.fastq.gz'))\n", " \n", " !seqtk sample -s 123 {f} 100000 > {outf}\n", " \n", " !seqtk sample -s 123 {r} 100000 > {outr}\n", "```\n", "\n", "The important command is ```seqtk sample -s 123 {infastq} 100000 > {outfastq}```. \n", "\n", "The script randomly subsamples a subset of reads. I needed to do this for paired metagenomic data, so to make sure the samples were random but consistent between the paired files I used the ```-s``` parameter to set the seed for random sampling. After the ```-s``` parameter (which can be any integer), I provide the input fastq file and then the number of reads I would like to subsample from the input file, I then send the output to a new file. " ] }, { "cell_type": "markdown", "id": "19c26025-15a1-47bc-bfe1-06277f3c492e", "metadata": { "tags": [] }, "source": [ "### Running Kaiju\n", "\n", "This happens in two steps. In the first step the reads are mapped to the database, and in the second step, taxonomy is assigned to each read based on how they mapped. \n", "\n", "Note: The first step takes much longer than the second.\n", "\n", "Let's run this for an example genome, using only 10k reads:" ] }, { "cell_type": "code", "execution_count": 4, "id": "8c2278fb-75a8-43e5-9063-9d52faabfd1c", "metadata": { "tags": [] }, "outputs": [], "source": [ "database_nodes = '/home/jovyan/shared/omics_tutorial/kaiju_db/nodes.dmp'\n", "database_names = database_nodes.replace('nodes','names')\n", "database = '/home/jovyan/shared/omics_tutorial/kaiju_db/GORG_v1_CREST.fmi'\n", "fq1 = '/home/jovyan/shared/omics_tutorial/10k_subsampled_metagenomes/SRR5720233_10ksub_1.fastq.gz'\n", "fq2 = fq1.replace(\"_1.tar.gz\", \"_2.tar.gz\")\n", "out = op.join(op.basename(fq1).replace('_1.fastq.gz','_vs_GORGv1_kaiju.out'))\n", "out_tax = out.replace('.out','_wtaxonomy.out')" ] }, { "cell_type": "markdown", "id": "325d0512-e9a5-4c63-8cff-b2c98ba8f3fc", "metadata": { "tags": [] }, "source": [ "```\n", "!kaiju -t {database_nodes} \\\n", "-f {database} \\\n", "-i {fq1} \\\n", "-j {fq2} \\\n", "-o {out} \\\n", "-v\n", "\n", "!kaiju-addTaxonNames -t {database_nodes} \\\n", "-n {database_names} \\\n", "-i {out} \\\n", "-o {out_tax} \\\n", "-r superkingdom,phylum,class,order,family,genus,species\n", "```" ] }, { "cell_type": "markdown", "id": "617fadf5-28b1-4526-a96f-6f924e524c84", "metadata": {}, "source": [ "The above will likely work on your local machine if you have a good amount of RAM, but it takes up too much RAM for the OHW jupyterhub, so pretend you've run this, and we'll move on from there!" ] }, { "cell_type": "markdown", "id": "a7f4320d-aff8-4b71-a404-b3b3e37f7814", "metadata": {}, "source": [ "### Exploring Results\n", "\n", "Disclaimer: I am visualizing the results of Kaiju with python today, BUT there are some great tools available through R's [phyloseq package](https://joey711.github.io/phyloseq/).\n", "\n", "If I do this tutorial next year, I will begrudgingly learn how to do this (and more!) using R packages, but today you're going to get some python." ] }, { "cell_type": "code", "execution_count": 101, "id": "922bb51a-8291-41ce-bb46-d9a0d105d090", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
statusread_idtax_idtaxonomy
0USRR5720342.295084140NaN
1USRR5720342.145626090NaN
2USRR5720342.30349750NaN
3CSRR5720342.66949841754Bacteria; Cyanobacteria; Oxyphotobacteria; Syn...
4CSRR5720342.202474572547Bacteria; Proteobacteria; Gammaproteobacteria;...
\n", "
" ], "text/plain": [ " status read_id tax_id \\\n", "0 U SRR5720342.29508414 0 \n", "1 U SRR5720342.14562609 0 \n", "2 U SRR5720342.3034975 0 \n", "3 C SRR5720342.6694984 1754 \n", "4 C SRR5720342.20247457 2547 \n", "\n", " taxonomy \n", "0 NaN \n", "1 NaN \n", "2 NaN \n", "3 Bacteria; Cyanobacteria; Oxyphotobacteria; Syn... \n", "4 Bacteria; Proteobacteria; Gammaproteobacteria;... " ] }, "execution_count": 101, "metadata": {}, "output_type": "execute_result" } ], "source": [ "\n", "out_tax = \"/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720342_100ksub_vs_GORGv1_kaiju_wtaxonomy.out\"\n", "\n", "odf = pd.read_csv(out_tax, \n", " sep = \"\\t\", \n", " names = ['status','read_id','tax_id','taxonomy'])\n", "\n", "odf.head()" ] }, { "cell_type": "markdown", "id": "8aa68063-11c7-4375-ad0d-cc18eabe5958", "metadata": {}, "source": [ "The ouput table has four columns: \n", "\n", "> **status**: whether the read was classified (C) or unclassified (U) \n", "> **read_id**: ID of the mapped read \n", "> **tax_id**: taxonomic ID of mapped read \n", "> **taxonomy**: taxonomy of mapped read\n", "\n", "How many reads were classified?" ] }, { "cell_type": "code", "execution_count": 102, "id": "4ba7172a-73d1-4124-912d-714034fb1078", "metadata": { "tags": [] }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "44.6 percent of reads were able to be classified.\n" ] } ], "source": [ "print(round(odf['status'].value_counts()['C'] / len(odf) * 100, 1), \n", " 'percent of reads were able to be classified.')" ] }, { "cell_type": "markdown", "id": "c4439c1f-3a42-4165-94a5-f90225e9f25c", "metadata": { "tags": [] }, "source": [ "What does it mean for a read to be classified? \n", "\n", "It means that a read aligned to a protein from a genome in the database, and a taxonomic annotation was assigned.\n", "\n", "![microbial_taxonomy](https://upload.wikimedia.org/wikipedia/commons/a/a5/Biological_classification_L_Pengo_vflip.svg)\n", "\n", "In the output taxonomic data from Kaiju, the rank order is a little bit different from this diagram:\n", "\n", "* superkingdom\n", "* phylum\n", "* class\n", "* order\n", "* family\n", "* genus\n", "* species\n", "\n", "In the Kaiju output table, the taxonomic ranks are all shown in the 'taxonomy' column, with each rank separated by a ';'" ] }, { "cell_type": "code", "execution_count": 103, "id": "93effb60-9012-44b3-b775-abc5a193b4a8", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "[(nan, 55360),\n", " ('Bacteria; Proteobacteria; Alphaproteobacteria; SAR11 clade; Surface 1; NA; NA; ',\n", " 9733),\n", " ('Bacteria; Cyanobacteria; Oxyphotobacteria; Synechococcales; Synechococcaceae; Prochlorococcus; NA; ',\n", " 5787),\n", " ('Bacteria; Proteobacteria; Gammaproteobacteria; Oceanospirillales; SAR86 clade; NA; NA; ',\n", " 4137),\n", " ('Bacteria; Proteobacteria; Alphaproteobacteria; Rickettsiales; SAR116 clade; NA; NA; ',\n", " 2288),\n", " ('Bacteria; Proteobacteria; Alphaproteobacteria; Rhodospirillales; Rhodospirillaceae; AEGEAN-169 marine group; NA; ',\n", " 2227),\n", " ('Bacteria; Proteobacteria; Alphaproteobacteria; Rhodobacterales; Rhodobacteraceae; NA; NA; ',\n", " 2191),\n", " ('Bacteria; Proteobacteria; Alphaproteobacteria; SAR11 clade; Surface 2; NA; NA; ',\n", " 1404),\n", " ('Bacteria; Marinimicrobia (SAR406 clade); NA; NA; NA; NA; NA; ', 1251),\n", " ('Bacteria; Bacteroidetes; Flavobacteriia; Flavobacteriales; Flavobacteriaceae; NS5 marine group; NA; ',\n", " 1124)]" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# look at 10 most common taxonomic classifications\n", "\n", "Counter(odf['taxonomy']).most_common()[:10]" ] }, { "cell_type": "markdown", "id": "7b811dd0-708f-4db6-b514-c1fb0413a7a9", "metadata": {}, "source": [ "There are instances where the available classification does not go all the way down to species. This happens either if the reference genome that the read hit is not classified to that level, or if the read had equivalent matches to references from two different taxonomic categories. In this case Kaiju assigns the read to the __last common ancestor__ of the two reads.\n", "\n", "\"lca_example\" \n", "\n", "For example, in the above diagram, if a read hit proteins in both Species A and Species C, the read would be classified to the Family level, because that is their last common ancestral node." ] }, { "cell_type": "markdown", "id": "452dae9b-0172-4be4-972f-0a0a4995095f", "metadata": {}, "source": [ "Sometimes, we want to examine distributions at specific taxonomic levels, so let's split taxonomy column up into new columns, one for each taxonomic level.\n", "(notice that the taxonomic string used is the same as what we entered when we ran ```kaiju-addTaxonNames```)" ] }, { "cell_type": "code", "execution_count": 105, "id": "740d2eae-ab08-4e4f-bef8-050bf8ffb1c5", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
statusread_idtax_idtaxonomysuperkingdomphylumclassorderfamilygenusspecies
0USRR5720342.295084140NaNNaNNaNNaNNaNNaNNaNNaN
1USRR5720342.145626090NaNNaNNaNNaNNaNNaNNaNNaN
2USRR5720342.30349750NaNNaNNaNNaNNaNNaNNaNNaN
3CSRR5720342.66949841754Bacteria; Cyanobacteria; Oxyphotobacteria; Syn...BacteriaCyanobacteriaOxyphotobacteriaSynechococcalesSynechococcaceaeProchlorococcusNA
4CSRR5720342.202474572547Bacteria; Proteobacteria; Gammaproteobacteria;...BacteriaProteobacteriaGammaproteobacteriaOceanospirillalesSAR86 cladeNANA
\n", "
" ], "text/plain": [ " status read_id tax_id \\\n", "0 U SRR5720342.29508414 0 \n", "1 U SRR5720342.14562609 0 \n", "2 U SRR5720342.3034975 0 \n", "3 C SRR5720342.6694984 1754 \n", "4 C SRR5720342.20247457 2547 \n", "\n", " taxonomy superkingdom \\\n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 Bacteria; Cyanobacteria; Oxyphotobacteria; Syn... Bacteria \n", "4 Bacteria; Proteobacteria; Gammaproteobacteria;... Bacteria \n", "\n", " phylum class order family \\\n", "0 NaN NaN NaN NaN \n", "1 NaN NaN NaN NaN \n", "2 NaN NaN NaN NaN \n", "3 Cyanobacteria Oxyphotobacteria Synechococcales Synechococcaceae \n", "4 Proteobacteria Gammaproteobacteria Oceanospirillales SAR86 clade \n", "\n", " genus species \n", "0 NaN NaN \n", "1 NaN NaN \n", "2 NaN NaN \n", "3 Prochlorococcus NA \n", "4 NA NA " ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "def get_rank(t, index_val):\n", " if type(t) is str:\n", " return t.split(';')[index_val].lstrip()\n", " else:\n", " return t\n", " \n", "for j, rank in enumerate('superkingdom,phylum,class,order,family,genus,species'.split(',')):\n", " odf[rank] = odf['taxonomy'].apply(lambda t: (get_rank(t, j)))\n", "\n", "odf.head()" ] }, { "cell_type": "markdown", "id": "7341db25-3659-4872-8779-235c587e262d", "metadata": {}, "source": [ "It's worth noting here that there are two different null values in this table. The default NaN, which shows up for unclassified reads, and 'NA' which is a space holder within the taxonomic database to show that a read was aligned to the database, but was not assigned to that particular phylogenetic rank.\n", "\n", "We can fill in the null 'NaN's with 'unmapped' to be more explict, so that we can plot those values below." ] }, { "cell_type": "code", "execution_count": 117, "id": "385fbea0-b74b-4732-bbec-f01c973ab023", "metadata": { "tags": [] }, "outputs": [], "source": [ "odf = odf.fillna('unmapped')" ] }, { "cell_type": "markdown", "id": "fbf72f71-3f64-4221-a765-0e5c30c63c37", "metadata": {}, "source": [ "Now let's visualize the distribution of reads by 'Phylum' for this sample:" ] }, { "cell_type": "code", "execution_count": 118, "id": "a036519a-f9f5-4099-8b48-cb4f29735907", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0, 'Total Reads Mapped per Group')" ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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oEGDqFWrFoGBgbi6urJz586btrO1teXo0aN069YNLy8vBg8ezLBhw3j++edv9y0SERGRYsiUU9jkdxGRIiQ9PR0nJyeqVDmEhYXD/U5HRESA5GSP+52CPOByf3+npaUVOq0ctOZFRIqhw4er3vQfPxERESl6NG1MRERERESKBBUvIiIiIiJSJKh4ERERERGRIkFrXkSk2PH1PaEF+yLyUNBieHnYaORFRERERESKBBUvIiIiIiJSJKh4ERERERGRIkHFSxEWHh6Os7PzbbUJDg5m5MiR//l574SHhwfz5s0rNMZkMrFu3bp/fa7FixfTtm3bf91PcXQ3/puJjo7GZDJx4cKFW27zyCOPsHbt2n91XhERESleVLzcA6GhoZhMJl544YU8x4YMGYLJZCI0NPRfn6dHjx4cO3bsttqsXbuWadOm/efnvVdSU1Np3779v+ojMzOTSZMmERYWZuzLyMhg/PjxVK9enVKlSuHq6kpwcDDr16/P0/6XX37BysqK2rVr59u/yWQyNnt7e+rVq0d4eHiB+fz88884ODjkWyBu376dBg0aUKpUKapXr86HH36YJ+bChQsMHTqUChUqUKpUKby9vdmwYcPNb8QDJiwsjFdeeYXs7Oz7nYqIiIg8IFS83CPu7u5ERETw999/G/suX77M559/TpUqVf51/1lZWdjY2FCuXLnbalemTBkcHP7dU5ju5Lw3unLlyr86/43c3Nywtrb+V32sWbMGe3t7mjZtaux74YUXWLduHe+99x5Hjx5l48aNdOvWjXPnzuVpHx4eTvfu3bl06RI7d+7M9xxLly4lNTWVgwcP0qNHD/r378+mTZvyxGVlZdGrVy+zXHIlJyfToUMHmjZtyoEDB3j11VcZMWIEa9asMWKuXLlCmzZtSElJ4YsvvuCnn35i0aJFVKpU6U5uzX31+OOPk5aWlu99EhERkYeTipd7JCAggCpVqphNe1m7di3u7u7Ur1/fLHbjxo00adIEZ2dnXFxc6NixI0lJScbxlJQUTCYTq1atIjg4mFKlSrFixYo807cmT56Mv78/y5cvx8PDAycnJ3r27Mlff/1lxPxzCpCHhwfTp0+nX79+2NvbU7VqVb766iv++OMPOnfujL29Pb6+vuzfv99ok9+0scjISAIDAylVqhRly5ala9euec4RGhqKk5MTgwYNAq4XDXXr1sXa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8cZ28OBBqlatyqeffoqfnx9RUVEF9mFlZcW1a9f+VR6enp5YWVkRExNj7MvKymL//v14e3ubxe7evdv4+fz58xw7dozatWsDsGPHDjp37swzzzxDvXr1qF69OomJiUZ8zZo1sbGxKfB6rKysAMyup3z58lSqVInjx4/j6elptuUu8L9VO3bsIDQ0lCeffBJfX1/c3NxISUkptI21tTWOjo5mm4iIiBRfGnkRKcD69es5f/48AwcOxMnJyezYU089xeLFi5k7dy6tWrWiRo0a9OzZk6tXr/LNN98wbtw44Pp0sO+++46ePXtibW1N2bJlbzsPOzs7XnzxRV5++WXKlClDlSpVmDVrFpcuXWLgwIFmsVOnTsXFxYXy5cvz2muvUbZsWbp06QJcL4LWrFlDbGwspUuX5p133uH06dNGAVSqVCnGjx/PuHHjsLKyonHjxvzxxx/8+OOPDBw4kHLlymFjY8PGjRupXLkypUqVwsnJicmTJzNixAgcHR1p3749mZmZ7N+/n/Pnz5uNityMp6cna9eupVOnTphMJsLCwoyRHRERERHQyItIgRYvXkzr1q3zFC4A3bp1Iz4+HkdHR1avXk1kZCT+/v60bNnS7OldU6dOJSUlhRo1ahgL3u/EzJkz6datG3379iUgIICff/6ZTZs2Ubp06TxxL730Eg0aNCA1NZXIyEhjxCQsLIyAgABCQkIIDg7Gzc3NKGxyhYWFMWbMGCZNmoS3tzc9evQw1t5YWloyf/58PvroIypWrEjnzp0BeO655/jkk08IDw/H19eX5s2bEx4eftsjL3PnzqV06dI0atSITp06ERISQkBAwB3eMRERESmOTDm5E+pFRIq49PR0nJycqFLlEBYWDjdvICJShCUne9zvFETuitzf32lpaTedAq6RFxERERERKRK05kVEip3Dh6tq8b6IiEgxpJEXEREREREpElS8iIiIiIhIkaDiRUREREREigSteRGRYsfX94SeNiYid5We7CXyYNDIi4iIiIiIFAkqXkREREREpEhQ8SLyEImOjsZkMnHhwoV7ep7g4GBGjhxZaIyHhwfz5s27p3mIiIhI8aLiRR4KnTp1onXr1vke27VrFyaTie+///4/zuq/16hRI1JTU3FycrrfqbBv3z4GDx58v9MQERGRIkTFizwUBg4cyNatWzlx4kSeY0uWLMHf35+A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2hpHR0ezTURERIqvO5o2FhgYyOXLl6levTq2traULFnS7Piff/55V5ITkeJn5syZ+Pv74+XlZexbvHgxzZo14/333zeLXb58OYsXL+bFF1/8r9MUERGRB9AdFS+9evXi119/5c0336R8+fJasC8it8zX15c+ffqwYMECALKysli+fDlTp07Fx8fHLPa5555j1qxZHDx4kHr16t2PdEVEROQBckfFS2xsLLt27dKHCRG5I9OmTWPVqlUAREZGcu7cOZ588sk8cTVr1sTX15fFixczf/78/zpNERERecDcUfFSu3Zt/v7777udi4gUQ/l92WTVqlW5fPmy8fratWsFtj906NC9SEtERESKoDtasD9z5kzGjBlDdHQ0586dIz093WwTERERERG520w5d/AV1hYW12uef651ycnJwWQyFfpXVBGReyU9PR0nJyfS0tL05DEREZEi4nZ+f9/RtLFt27bdUWIiIiIiIiJ36o6Kl+bNm9/tPERERERERAp1R8XLd999V+jxZs2a3VEyIiIiIiIiBbmj4iU4ODjPvhvXv2jNi4jcT76+J7CwcLjfaYhIIZKTPe53CiJSBN3R08bOnz9vtp05c4aNGzfyyCOPsHnz5rudo4iIiIiIyJ0VL05OTmZb2bJladOmDbNmzWLcuHF3O0cR+f+ZTCbWrVtX4PHo6GhMJhMXLly457lcunSJbt264ejoaJzTw8ODefPm3bVzTJ48GX9//7vWn4iIiBRtd1S8FMTV1ZWffvrpbnYp8lA5ffo0w4cPp3r16lhbW+Pu7k6nTp2Iioq636nlsWzZMnbs2EFsbCypqak4OTnd9XOMHTv2gbx2ERERuT/uaM3LP7/xOicnh9TUVGbOnEm9evXuSmIiD5uUlBQaN26Ms7Mzs2bNws/Pj6ysLDZt2sTQoUM5evTof5LHlStXsLKyumlcUlIS3t7e+Pj43LNc7O3tsbe3v2f9i4iISNFyRyMv/v7+1K9fH39/f+PnDh06cOXKFRYvXny3cxR5KAwZMgSTycTevXt56qmn8PLyom7duowePZrdu3cbcWfPnuXJJ5/E1taWmjVrEhkZWWi/a9asoW7dulhbW+Ph4cGcOXPMjnt4eDB9+nRCQ0NxcnJi0KBBN20XHBzMnDlz+O677zCZTPk+xAMgLS2NwYMHU65cORwdHWnZsiUHDx4E4I8//sDN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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "tax_level = 'phylum'\n", "\n", "phycount = odf.groupby(tax_level, as_index = False)['read_id'].count().sort_values(by = 'read_id', ascending = False)\n", "#tax_level = 'family'\n", "#phycount = odf[odf['order'] == 'SAR11 clade'].groupby(tax_level, as_index = False)['read_id'].count().sort_values(by = 'read_id', ascending = False)\n", "\n", "sns.barplot(x = phycount['read_id'], y = phycount[tax_level], color = 'blue')\n", "plt.xscale('log')\n", "plt.xlabel('Total Reads Mapped per Group')" ] }, { "cell_type": "markdown", "id": "2753e5b3-639d-4cea-ae56-d753eb164598", "metadata": {}, "source": [ "Now let's scale up to check out the whole series of samples from the surface at BATS collected in 2004." ] }, { "cell_type": "code", "execution_count": 9, "id": "3f7d48ea-a6b6-4972-9b35-3b1e2b49a77b", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "['/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720337_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720338_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720342_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720256_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720257_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720278_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720307_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720321_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720260_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720251_100ksub_vs_GORGv1_kaiju_wtaxonomy.out',\n", " '/home/jovyan/shared/omics_tutorial/kaiju_results/results/SRR5720322_100ksub_vs_GORGv1_kaiju_wtaxonomy.out']" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "outs = glob.glob('/home/jovyan/shared/omics_tutorial/kaiju_results/results/*.out')\n", "outs" ] }, { "cell_type": "code", "execution_count": 119, "id": "15974507-6c65-4a8c-b5be-f10b0e047289", "metadata": { "tags": [] }, "outputs": [], "source": [ "def read_in_kaiju(outfile):\n", " library = op.basename(outfile).split(\"_\")[0]\n", " df = pd.read_csv(outfile, \n", " sep = \"\\t\", \n", " names = ['status','read_id','tax_id','taxonomy'])\n", " df['library'] = library\n", " for j, rank in enumerate('superkingdom,phylum,class,order,family,genus,species'.split(',')):\n", " df[rank] = df['taxonomy'].apply(lambda t: (get_rank(t, j)))\n", " df = df.fillna('unmapped')\n", " return df\n", "\n", "tax_level = 'phylum'\n", "\n", "combodf = pd.DataFrame()\n", "\n", "for o in outs:\n", " df = read_in_kaiju(o)\n", " phycount = df.groupby(['library',tax_level], as_index = False)['read_id'].count()\n", " combodf = pd.concat([combodf, phycount])" ] }, { "cell_type": "markdown", "id": "99d6cd7a-a941-4b67-a267-c37e7f8b8dd0", "metadata": {}, "source": [ "Add sample information to dataframe" ] }, { "cell_type": "code", "execution_count": 120, "id": "98da4df4-d3cb-4ed2-85b1-61e7769dc35d", "metadata": { "tags": [] }, "outputs": [], "source": [ "# Load sample information and pull out 'month' value for plotting\n", "\n", "mg_metadata = pd.read_csv('data/bats_metagenomes_of_interest.csv')\n", "mg_metadata[['year','month','day']] = mg_metadata['Collection_date'].str.split(\"-\", expand = True)\n", "\n", "mg_metadata['month'] = mg_metadata['month'].apply(pd.to_numeric)\n", "\n", "# merging metadata table with the combined phylum counts\n", "\n", "combodf = combodf.merge(mg_metadata, left_on = 'library', right_on = 'Run', how = 'left')" ] }, { "cell_type": "code", "execution_count": 121, "id": "4b127b4e-ac94-4f88-aa1f-d52ce36e7cc2", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Reads Assigned to Phylum')" ] }, "execution_count": 121, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAABC8AAAHQCAYAAACBTUBWAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8pXeV/AAAACXBIWXMAAA9hAAAPYQGoP6dpAADixklEQVR4nOzdd3yN9///8cdJIjsiYkQIiT2CmG0oYkaNUm2NKFIENWOUKtFYtUlRSkviY9SoUUVTxChipqJUWqMx2lI7SotI8vvDz/V1GiMhInjeb7dzu51zXa/rer/e14nIeZ33+32ZUlJSUhARERERERERyaIsnnUCIiIiIiIiIiIPo+KFiIiIiIiIiGRpKl6IiIiIiIiISJam4oWIiIiIiIiIZGkqXoiIiIiIiIhIlqbihYiIiIiIiIhkaSpeiIiIiIiIiEiWpuKFiIiIiIiIiGRpVs86ARERERERuSMpKYnExMRnnYaISKawtLTEysoKk8n0yFgVL0REREREsoBr167x+++/k5KS8qxTERHJNPb29uTLlw9ra+uHxplS9NtRREREROSZSkpK4ujRo9jb25M7d+40fQspIvI8S0lJ4datW5w/f56kpCSKFSuGhcWDV7bQyAsRERERkWcsMTGRlJQUcufOjZ2d3bNOR0QkU9jZ2ZEtWzZOnjzJrVu3sLW1fWCsFuwUEREREckiNOJCRF42DxttYRb3lPMQEREREREREXkiKl6IiIiIiIiISJam4oWIiIiIiEgG8vT0JCws7FmnIfJC0YKdIiIiIiJZlOeHazO1vRNjG2dqeyIiaaWRFyIiIiIiIiKSpal4ISIiIiIij+V+0yN8fHwIDQ0F7tw95csvv+TNN9/E3t6eYsWKsXr1aiN2y5YtmEwmvv/+eypUqICdnR116tTh3LlzfPfdd5QqVYrs2bPTpk0b/vnnH+O4yMhIXnvtNXLkyIGrqytNmjTh+PHjxv4TJ05gMplYvHgx1apVw9bWljJlyrBly5ZUba9du5by5ctja2vLK6+8wsGDB836Ex0dTc2aNbGzs8PDw4PevXtz/fp1Y/+5c+do2rQpdnZ2eHl5sXDhwgy4siLyXypeiIiIiIjIUzN8+HBatmzJTz/9RKNGjWjbti2XLl0yiwkNDWX69OlER0dz+vRpWrZsSVhYGIsWLWLt2rVs2LCBadOmGfHXr1+nX79+7N27l6ioKCwsLHjzzTdJTk42O+8HH3xA//792b9/P9WqVeONN97g4sWLqWImTpzI3r17yZMnD2+88QaJiYkAHDx4EH9/f1q0aMFPP/3EkiVL2L59Oz179jSODwwM5MSJE2zatImvv/6aGTNmcO7cuYy+jCIvPa15kYGSk5P5888/cXJy0j26RURERLKglJQU/v77b9zd3bGw0Pd4mSEwMJA2bdoA8MknnzBt2jT27NlDw4YNjZhRo0ZRvXp1ADp16sTgwYM5fvw4hQsXBuDtt99m8+bNDBo0CIC33nrLrI05c+aQJ08eDh8+jLe3t7G9Z8+eRuzMmTOJjIxkzpw5DBw40Ij5+OOPqV+/PgDz5s2jQIECrFy5kpYtWzJhwgQCAgIIDg4GoFixYkydOpVatWoxc+ZMTp06xXfffceuXbt45ZVXjFxKlSqVYddPRO5Q8SID/fnnn3h4eDzrNERERETkEU6fPk2BAgWedRovhXLlyhnPHRwccHJySjUy4d6YvHnzYm9vbxQu7m7bs2eP8fr48eOEhISwa9cuLly4YIy4OHXqlFnxwtfX13huZWVF5cqViYuLM2v73picOXNSokQJIyYmJoZjx46ZTQVJSUkhOTmZ+Ph4jhw5Ypz3rpIlS5IjR460XRwRSTMVLzKQk5MTcOc/w+zZs6frWO+Pv38aKT3QoeH+mdqe+pfxMruPW7aWz9T2/GodyNT2xowZk6ntDR48OFPbA2BMJv+RPvj3TG3uRX8PX/T+wYvfxxf9/8KiP/yUqe0BHKtZ7tFB/3H16lU8PDyMv9vkyVhYWJCSkmK27e6Ui7uyZctm9tpkMqWa3nFvjMlkeuQxTZs2xcPDgy+++AJ3d3eSk5Px9vbm1q1bj8w5LSOk78YkJyfTtWtXevfunSqmYMGC/Prrr2k+p4g8GRUvMtDdX1rZs2dPd/Hi1hvFnkZKD5Te/J6UhY19praX2f0Lb/phprYHkD37O5nanoND5g6tzez30MbGJlPby+z+AYTa9Mvc9vQeZqgXvX/w4vfxRf+/vvu+jZnaHkD2Jq899rH6sJkxcufOzZkzZ4zXV69eJT4+/qm2efHiReLi4pg1axY1atQAYPv27feN3bVrFzVr1gTg9u3bxMTEmK1XcTemYMGCAFy+fJkjR45QsmRJACpWrMjPP/9M0aJF73v+UqVKcfv2bfbt20fVqlUB+PXXX7ly5coT91NEzKl4kUUsTHnr0UEZ6vijQzLQnAapq9VPl+5RntG2/dAuU9urWydTmxORLKDzjbrPOoWnqtvWVZnbYG2fzG1PXkp16tQhIiKCpk2b4uLiQkhICJaWlk+1TRcXF1xdXZk9ezb58uXj1KlTfPjh/b9I+uyzzyhWrBilSpViypQpXL58mY4dO5rFjBgxAldXV/LmzcuQIUPIlSsXzZs3B2DQoEG8+uqr9OjRg6CgIBwcHIiLizMWEC1RogQNGzYkKCiI2bNnY2VlRXBwMHZ2dk/1Goi8jFS8EMkAmf3BHvThXuRl86J/sJfnn35Gn44TY7P2FzKDBw/mt99+o0mTJjg7OzNy5MinPvLCwsKCxYsX07t3b7y9vSlRogRTp07Fz88vVezYsWMZN24c+/fvp0iRInzzzTfkypUrVUyfPn04evQo5cuXZ/Xq1VhbWwN31uLYunUrQ4YMoUaNGqSkpFCkSBFatWplHB8eHk7nzp2pVasWefPmZdSoUYSEhDzVayDyMlLxQkTkJaEPFiLPlv4Nyosoe/bsLFmyxGxbhw4djOf/XQ8DMJtS4efnlyomMDCQwMBAs22hoaGEhoYar+vVq8fhw4fNYu7XVqlSpdi1a9dD+/Daa69x6NChB+6vUqUK69evf+B+Nzc31qxZY7atXbvM/2JL5EWn4oVIBtAfpM8/vYfPvxf9PfzmSuKjgzJQj0xt7Y6XoY8iIiLyeFS8yCK0noBkdfpgmLH0oUlEREREJO1UvJBMoeKMyLP3ohdoXvT+iYhI2nl6et53Gsm97jdlRUSyLhUvsogX/VvtF92S+HGZ3mZ/amRqe5ndx8zun4jI0/ai/x59Gf4vFBGRZ0fFC8kUKs6IiDyZOlsye6xHXCa393L0UURERB6PihciIvJC0AdfyepsXfo96xSeqhe9fyIi8mypeCEiwsvxwfdl6KOIiIiIvJgsnnUCIiIiIiIiIiIPo5EXWcSLvoiXPP80HFhERERERJ4VFS9EMoA+2Is8ey0HZ+5/aQcztTWRrC/zp6bBSzE9LdQ5k9tLyNz2MpnJZGLlypU0b978WaeSJidOnMDLy4v9+/fj4+PzrNMReaZUvBAReUnow73Is6V1Z+RFFBgYyLx58wCwsrLCw8ODFi1aMHz4cBwcHB7rnKGhoaxatYrY2NgMzDTzeHp6EhwcTHBw8BOfy8PDgzNnzpArV64nT0zkOafihYiIiIiIPLaGDRsSHh5OYmIi27Zto3Pnzly/fp2ZM2eaxSUmJpItW7ZnlOXz59atW1hbW+Pm5vasUxHJElS8kEyhNT1EREREXkw2NjbGB+yAgAA2b97MqlWryJs3L6tWraJ3796MGjWKEydOkJSUxOnTp+nVqxdRUVFYWFjQsGFDpk2bRt68eYmIiGD48OHAnSkeAOHh4QQGBpKQkMAHH3zAqlWruHHjBpUrV2bKlCmUL1/eyGXmzJlMnDiR06dP4+XlxdChQ2nXrp1ZvmfOnOH1119ny5YtuLm5MX78eN555x1j/6BBg1i5ciW///47bm5utG3blmHDhpkVXlavXs2IESM4dOgQjo6O1KxZkxUrVuDn58fJkyfp27cvffv2BSAlJQWA6OhoPvzwQ/bu3UuuXLl48803GTNmjDFCxdPTk86dO3Ps2DFjasvw4cPNpo0kJSXRpUsXNm3axNmzZylYsCDdu3enT58+Gf22imQ5Kl6IiKApFSIiIhnFzs6OxMREAI4dO8bSpUtZvnw5lpaWADRv3hwHBwe2bt3K7du36d69O61atWLLli20atWKQ4cOERkZycaNGwFwdnYmJSWFxo0bkzNnTtatW4ezszOzZs2ibt26HDlyhJw5c7Jy5Ur69OlDWFgY9erVY82aNbz33nsUKFCA2rVrG/mFhIQwduxYPv30U+bPn0+bNm3w9vamVKlSADg5OREREYG7uzsHDx4kKCgIJycnBg4cCMDatWtp0aIFQ4YMYf78+dy6dYu1a9cCsGLFCsqXL0+XLl0ICgoy2jx48CD+/v6MHDmSOXPmcP78eXr27EnPnj0JDw834iZMmEBISAhDhw6977VNTk6mQIECLF26lFy5chEdHU2XLl3Ily8fLVu2zKi3UCRLUvFCRNJEc7VFRETkUfbs2cOiRYuoW7cucGfqw/z588mdOzcAGzZs4KeffiI+Ph4PDw8A5s+fT5kyZdi7dy9VqlTB0dERKysrs+kSmzZt4uDBg5w7dw4bGxsAJk6cyKpVq/j666/p0qULEydOJDAwkO7duwPQr18/du3axcSJE82KF++88w6dO3cGYOTIkWzYsIFp06YxY8YMALPCgaenJ/3792fJkiVG8WL06NG0bt3aGCECGKM/cubMiaWlJU5OTmb5T5gwgYCAAGMdjGLFijF16lRq1arFzJkzsbW1BaBOnToMGDDAOO7EiRNm1zdbtmxm7Xp5eREdHc3SpUtVvJAXnsWzTkBERERERJ5fa9aswdHREVtbW3x9falZsybTpk0DoFChQkbhAiAuLg4PDw+jcAFQunRpcuTIQVzcg7+4iImJ4dq1a7i6uuLo6Gg84uPjOX78uHHu6tWrmx1XvXr1VOf19fVN9fremK+//prXXnsNNzc3HB0dCQkJ4dSpU8b+2NhYoziTVjExMURERJjl7u/vT3JyMvHx8UZc5cqVH3muzz//nMqVK5M7d24cHR354osvzPITeVFp5IWIiIiIiDy22rVrM3PmTLJly4a7u7vZ2hD/veNISkqKsZZFWrbflZycTL58+diyZUuqfTly5DCe//ccjzrvf4/btWuXMarC398fZ2dnFi9ezKRJk4xYOzu7R57vfvl37dqV3r17p9pXsGBB4/mj7tCydOlS+vbty6RJk/D19cXJyYkJEyawe/fudOck8rxR8SKLsHXp96xTEBERERFJNwcHB4oWLZqm2NKlS3Pq1ClOnz5tjL44fPgwCQkJxpoT1tbWJCUlmR1XsWJFzp49i5WVFZ6envc9d6lSpdi+fTvt27c3tkVHRxvnvWvXrl1mMbt27aJChQoA7Nixg0KFCjFkyBBj/8mTJ82OL1euHFFRUbz33nv3zeNB+f/8889pvk4Psm3bNqpVq2ZMjQGMkSciLzoVL0QyQOavBwFaE0Lk5aJFZUXkRVCvXj3KlStH27ZtCQsLMxbsrFWrljFlwtPTk/j4eGJjYylQoABOTk7Uq1cPX19fmjdvzrhx4yhRogR//vkn69ato3nz5lSuXJkPPviAli1bUrFiRerWrcu3337LihUrjIU/71q2bBmVK1fmtddeY+HChezZs4c5c+YAULRoUU6dOsXixYupUqUKa9euZeXKlWbHf/zxx9StW5ciRYrQunVrbt++zXfffWesieHp6ckPP/xA69atsbGxIVeuXAwaNIhXX32VHj16EBQUhIODA3FxccZ6G2lVtGhR/ve///H999/j5eXF/Pnz2bt3L15eXk/ytog8F1S8EBERERHJqkITnnUGGcpkMrFq1Sp69epFzZo1zW6Vetdbb73FihUrqF27NleuXDFulbpu3TqGDBlCx44dOX/+PG5ubtSsWZO8efMCd+5i8umn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RERERETksaSkpAB3pjY8TOfOnQkPDwfg3LlzrF27lo4dOxr7jx8/TkBAAIULFyZ79ux4eXkBcOqU+UK35cqVM57ny5fPOB9AXFwc1atXN4uvXr06R48eJSkpydjm6+trFuPr60tc3P8tVLp582bq169P/vz5cXJyon379ly8eJHr168D/zfyIj1iYmLYvHkzjo6OxuNuwefe6TGVK1d+5Lm+/vprXnvtNdzc3HB0dCQkJCTVdRJ5Eal4ISIiIiIij6VYsWKYTCazD//30759e3777Td27tzJggUL8PT0pEaNGsb+pk2bcvHiRb744gt2797N7t27gTuLVt4rW7ZsxvO7BZO7U0tSUlJSFVHuFlce5e5xJ0+epFGjRnh7e7N8+XJiYmL47LPPAIx1Jezs7NJ0znslJyfTtGlTYmNjzR5Hjx6lZs2aRtz9pt7ca9euXbRu3ZrXX3+dNWvWsH//foYMGZLqOom8iDRtREREREREHkvOnDnx9/fns88+o3fv3qk+fF+5csVYhLN58+aEh4ezc+dO3nvvPSPm4sWLxMXFMWvWLKOgsX379nTnUrp06VTHRUdHU7x4cSwtLY1tu3btMovZtWuXMQpi37593L59m0mTJmFhced73qVLl5rFlytXjqioKIYPH37fPKytrc1GegBUrFiR5cuX4+npiZXV438E27FjB4UKFWLIkCHGtpMnTz72+USeJxp5ISIiIiIij23GjBkkJSVRtWpVli9fztGjR4mLi2Pq1KlmUzQ6d+7MvHnziIuLo0OHDsZ2FxcXXF1dmT17NseOHWPTpk3069cv3Xn079+fqKgoRo4cyZEjR5g3bx7Tp09nwIABZnE7duxg/PjxHDlyhM8++4xly5bRp08fAIoUKcLt27eZNm0av/32G/Pnz+fzzz83O37w4MHs3buX7t2789NPP/HLL78wc+ZM484hnp6e7N69mxMnTnDhwgWSk5Pp0aMHly5dok2bNuzZs4fffvuN9evX07Fjx1SFjocpWrQop06dYvHixRw/fpypU6eycuXKdF8rkeeRihciIiIiIvLYvLy8+PHHH6lduzb9+/fH29ub+vXrExUVxcyZM424evXqkS9fPvz9/XF3dze2W1hYsHjxYmJiYvD29qZv375MmDAh3XlUrFiRpUuXsnjxYry9vRk2bBgjRowwW6wT7hQ5YmJiqFCh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0Y0bN4iPj8fLywtbW9tnnY6ISKZJ6+8/jbwQERERERERkSxNxQsRERERERERydJUvBARERERERGRLE3FCxERERERERHJ0lS8EBEREREREZEsTcULEREREREREcnSVLwQERERERERkSxNxQsRERERERERydJUvBARERERERGRLE3FCxERERERESA0NBQfH59nnYaI3IfVs05ARERERETub1KrJpnaXv8la9IVHxgYyLx581Jt9/f3JzIyMqPSeumcOHECLy8v9u/fr2KKyP+n4oWIiIiIiDy2hg0bEh4ebrbNxsbmsc6VkpJCUlISVlYZ/zHl1q1bWFtbZ/h5RSRzaNqIiIiIiIg8NhsbG9zc3MweLi4unDhxApPJRGxsrBF75coVTCYTW7ZsAWDLli2YTCa+//57KleujI2NDfPnz8fCwoJ9+/aZtTNt2jQKFSpkFDg6deqEl5cXdnZ2lChRgk8//dQsPjAwkObNmzNmzBjc3d0pXrw4AL///jutW7cmZ86cODg4ULlyZXbv3m127Pz58/H09MTZ2ZnWrVvz999/G/siIyN57bXXyJEjB66urjRp0oTjx4+bHf/HH3/QqlUrXFxccHV1pVmzZpw4ccLYn5yczIgRIyhQoAA2Njb4+PiYjVTx8vICoEKFCphMJvz8/ADYu3cv9evXJ1euXDg7O1OrVi1+/PHHtL9ZIs8xFS9EREREROSZGjhwIGPGjCEuLo433niDevXqpRrNER4eTmBgICaTieTkZAoUKMDSpUs5fPgww4YN46OPPmLp0qVmx0RFRREXF8eGDRtYs2YN165do1atWvz555+sXr2aAwcOMHDgQJKTk41jjh8/zqpVq1izZg1r1qxh69atjB071th//fp1+vXrx969e4mKisLCwoI333zTOMc///xD7dq1cXR05IcffmD79u04OjrSsGFDbt26BcCnn37KpEmTmDhxIj/99BP+/v688cYbHD16FIA9e/YAsHHjRs6cOcOKFSsA+Pvvv+nQoQPbtm1j165dFCtWjEaNGpkVV0ReVI81HuuPP/5gx44dnDt3zuwfOkDv3r0zJDEREREREcn61qxZg6Ojo9m2QYMG0a5duzSfY8SIEdSvX9943blzZ7p168bkyZOxsbHhwIEDxMbGGh/is2XLxvDhw414Ly8voqOjWbp0KS1btjS2Ozg48OWXXxrT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rl69+rTzFRERERGRLKBTp05s2rSJkydPpto3d+5cfHx80l24uHXrVqptSUlJqW4SkJVYW1vj5ub22NPp79fnx5U7d27s7e0z7HwiWUmaihc5cuTAxcUFFxcX6tevz65du6hbty558uQxtt+NERERERGRF1+TJk3IkycPERERZtv/+ecflixZYizyX7NmTezs7PDw8KB3795cv37diPX09GTUqFEEBgbi7OxMUFAQERER5MiRgzVr1lC6dGlsbGw4efIkfn5+qaZDNG/enMDAQOP1zZs3GThwIB4eHtjY2FCsWDHmzJlj7N+6dStVq1bFxsaGfPny8eGHH3L79m1jv5+fH7169SI4OBgXFxfy5s3L7NmzuX79Ou+99x5OTk4UKVKE7777zjhmy5YtmEwmrly5YmzbsWMHtWrVwt7eHhcXF/z9/bl8+bLRRs+ePenXrx+5cuWifv36acoN4Pbt2/Ts2ZMcOXLg6urK0KFDSUlJMbue904rmTx5MmXLlsXBwQEPDw+6d+/OtWvXHv7GimRRaSpebN68mU2bNhmP/76+d5uIiIiIiLz4rKysaN++PREREWYfoJctW8atW7coX748/v7+tGjRgp9++oklS5awfft2evbsaXaeCRMm4O3tTUxMDCEhIcCdAsiYMWP48ssv+fnnn8mTJ0+acmrfvj2LFy9m6tSpxMXF8fnnn+Po6AjAH3/8QaNGjahSpQoHDhxg5syZzJkzh1GjRpmdY968eeTKlYs9e/bQq1cv3n//fd555x2qVavGjz/+iL+/P+3ateOff/65bw6xsbHUrVuXMmXKsHPnTrZv307Tpk3N7so4b948rKys2LFjB7NmzUpXblZWVuzevZupU6cyZcoUvvzyywdeDwsLC6ZOncqhQ4eYN28emzZtYuDAgWm6liJZTZrWvKhVq9bTzkNERERERJ4zHTt2ZMKECcailXBnykiLFi344osvCAgIMEZLFCtWjKlTp1KrVi1mzpyJra0tAHXq1GHAgAHGObdv305iYiIzZsygfPnyac7lyJEjLF26lA0bNlCvXj0AChcubOyfMWMGHh4eTJ8+HZPJRMmSJfnzzz8ZNGgQw4YNw8Lizve65cuXZ+jQoQAMHjyYsWPHkitXLoKCggAYNmwYM2fO5KeffuLVV19Nlcf48eOpXLkyM2bMMLaVKVPGLKZo0aKMHz/e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+a68efMa+86ePYu1tTUuLi4PjcmTJ0+q9vPkyWMW8992XFxcsLa2NmL+a8yYMcYaGs7Oznh4eKT3EoiIiIiIiIjIIzzT4kVycjIVK1bkk08+oUKFCnTt2pWgoCBmzpxpFne/ex4/6n7H/425X/zjxNxr8ODBJCQkGI/Tp08/NCcRERERERERSb9nWrzIly8fpUuXNttWqlQpTp06BYCbmxtAqpEP586dM0ZJuLm5cevWLS5fvvzQmL/++itV++fPnzeL+W87ly9fJjExMdWIjLtsbGzInj272UNEREREREREMlaa17x4GqpXr86vv/5qtu3IkSMUKlQIAC8vL9zc3NiwYQMVKlQA4NatW2zdupVx48YBUKlSJbJly8aGDRto2bIlAGfOnOHQoUOMHz8eAF9fXxISEtizZw9Vq1YFYPfu3SQkJFCtWjUjZvTo0Zw5c8a4fdP69euxsbGhUqVKT/lKiGR9WixQRERERESelWdavOjbty/VqlXjk08+oWXLluzZs4fZs2cbtzM1mUwEBwfzySefUKxYMYoVK8Ynn3yCvb09AQEBADg7O9OpUyf69++Pq6srOXPmZMCAAZQtW9a4+0ipUqVo2LAhQUFBzJo1C7hzq9QmTZpQokQJABo0aEDp0qVp164dEyZM4NKlSwwYMICgoCCNqBAREckEKpKKiIjIgzxW8eL48eOEhYURFxeHyWSiVKlS9OnThyJFiqTrPFWqVGHlypUMHjyYESNG4OXlRVhYGG3btjViBg4cyL///kv37t25fPkyr7zyCuvXr8fJycmImTJlClZWVrRs2ZJ///2XunXrEhERgaWlpRGzcOFCevfubdyV5I033mD69OnGfktLS9auXUv37t2pXr06dnZ2BAQEMHHixMe5RCIiIiIiIiKSQdJdvPj+++9544038PHxoXr16qSkpBAdHU2ZMmX49ttvqV+/frrO16RJE5o0afLA/SaTidDQUEJDQx8YY2try7Rp05g2bdoDY3LmzMmCBQsemkvBggVZs2bNI3MWERERERERkcyT7uLFhx9+SN++fRk7dmyq7YMGDUp38ULkRZDZQ51Bw51FREQk6ztx4gReXl7s378fHx+fZ51OpvHz88PHx4ewsLBnnYrICyPdxYu4uDiWLl2aanvHjh31j1NEREREJANFbUrftOwnVbfO8TTHmkymh+7v0KHD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ra1xc3O7b56bN2/m4MGDnDt3zvhMM3HiRFatWsXXX39Nly5daNSoEUFBQbRt25YqVapga2vL2LFj03bRROSxpLt40atXL7p160ZMTAxVqlQxhoh9+eWXfPTRRwB8//33VKhQIcOTFRERERGRrCMlJQUgTetGlCtXznju4OCAk5MT586du29sXFwczZo1M9tWvXp1wsLCSEpKwtLSEoDKlSs/1nEPExMTw7Vr11KtWfHvv/9y/Phx4/XEiRPx9vZm6dKl7Nu3z/giV0SejnQXL4YOHYqXlxfTp09n/vz5AJQoUYIvvviCgIAAALp168b777+fsZmKiIiIiEiWUqxYMUwmE3FxcTRv3vyhsdmyZTN7bTKZSE5Ovm9sSkpKqoLI3ULJvf47VSWtxz1McnIy+fLlY8uWLan23TsN5rfffuPPP/8kOTmZkydPmhVnRCTjpbt4AXeGY7Vt2/aB++3s7B47IREREREReT7kzJkTf39/PvvsM3r37p2qmHDlyhWzD/xpVbp0abZv3262LTo6muLFiz909MTjHnevihUrcvbsWaysrPD09LxvzK1bt2jbti2tWrWiZMmSdOrUiYMHD5I3b940tSEi6ZfuBTtFRERERETumjFjBklJSVStWpXly5dz9OhR4uLimDp1Kr6+vo91zv79+xMVFcXIkSM5cuQI8+bNY/r06WbrW2TkcfeqV68evr6+NG/enO+//54TJ04QHR3N0KFD2bdvHwBDhgwhISGBqVOnMnDgQEqVKkWnTp0eq68ikjZpKl7kzJmTCxcuAODi4kLOnDkf+BARERERkZeHl5cXP/74I7Vr16Z///54e3tTv359oqKimDlz5mOds2LFiixdupTFixfj7e3NsGHDGDFihNlinRl53L1MJhPr1q2jZs2adOzYkeLFi9O6dWtOnDhB3rx52bJlC2FhYcyfP5/s2bNjYWHB/Pnz2b59+2P3V0QeLU3TRqZMmYKTk5PxPC0L8oiIiIiIyJM5Mbbxs04hTfLly8f06dOZPn36ffffb92JK1euGM/9/PxSxbz11lu89dZbD2zzxIkT993+qOPCwsIeeS4nJyemTp3K1KlTU8V6eHiQmJhotq1gwYJm/QkNDSU0NPSBOYhI+qWpeNGhQwfjeXqqliIiIiIiIiIiTyrda178+OOPHDx40Hj9zTff0Lx5cz766CNu3bqV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bxQuAKZMmULz5s1p2bIl1atXx97enm+//dYoXMCdWyGVLVuWBg0a0KBBA8qVK8f8+fON/ZaWlqxduxZbW1uqV69Oy5Ytad68ORMnTnwq/RIRERERkeffuXPnmDx5Mn/88Qfvvffes05H5IWWrgU77ezs6NChAx06dODo0aPMnTuXffv2Ub16dRo3bszbb7+d7juO3Ou/K+aaTCZCQ0MJDQ194DG2trZMmzbtoSMkcubMyYIFCx7adsGCBVmzZk160hURERERkZdY3rx5yZUrF7Nnz051B0QRyVhpHnnxX8WKFWPMmDGcPn2aBQsW8M8//9CmTZuMzE1ERERERCTLSklJ4fz58wQEBDzrVEReeOm+Vep/WVhY0LRpU5o2bcq5c+cyIicREREREREREcNjj7y4nzx58mTk6UREREREREREMrZ4ISIiIiIiIiKS0VS8EBEREREREZEsTcULEREREREREcnS0l28OH36NL///rvxes+ePQQHBzN79uwMTUxEREREREREBB6jeBEQEMDmzZsBOHv2LPXr12fPnj189NFHjBgxIsMTFBERERGRF1doaCg+Pj6Z3q6npydhYWGZ3q6IPJ503yr10KFDVP1/7d13WBTX+zbwe+m9I0URUGwIiooawIJRQYkGLLFrUGMXJYgYY0OJiMaKPRYg1phY4hcVOzZsoGgM2BDEAsEGSpM27x/+nNeVIiBK8f5cF9e1M3PmnOfMruvus+ecadMGALBr1y5YWVnh3LlzOHLkCMaOHYvZs2dXeJBERERERF8i6xDrz9reP9//U6by7u7uCAkJEbd1dHTQunVrLFq0CM2aNavo8CpVcHAwPD09kZqaWtmhEH2RyjzyIjc3F4qKigCAY8eO4dtvvwUANG7cGElJSRUbHRERERERVWndunVDUlISkpKScPz4ccjJyaFHjx6VHRYR1TBlTl40bdoU69atw5kzZ3D06FF069YNAPD48WPo6upWeIBERERERFR1KSoqwtDQEIaGhrCxscG0adPw4MEDPHnyBAAwbdo0NGzYECoqKqhXrx5mzZqF3NzcYutzd3eHm5sbFi9eDCMjI+jq6mLChAlS5+Tk5MDHxwe1a9eGqqoq2rZti/DwcKl6du/ejaZNm0JRURFmZmZYsmRJif1YunQprK2toaqqChMTE4wfPx7p6ekAgPDwcAwfPhxpaWmQ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QUREH8/R0RH5+fk4c+YMACA/Px+ampro3bs3fv/9dwBAcnIyjIyMcP78efzvf//D7t27ERsbC4lEAgBYs2YNpk2bhrS0NMjIyBSqEwDatGmDr7/+WkxESCQS7N27F25ubmIZX19f/Prrr0hOToa6ujoAwMfHB6dPn8aFCxc+x+UgIiIiohqEIy+IiGqQZs2aiY9lZWWhq6sLa2trcZ+BgQEAICUlBbGxsbCzsxMTFwDg4OCA9PR0PHz4sMg6AcDIyAgpKSkfjMXMzExMXJTlPCIiIiKi9zF5QURUg8jLy0ttSyQSqX1vExUFBQUQBEEqcQEAbwfjvbu/qDoLCgrKFUtpziMiIiIieh+TF0REXyhLS0tERETg3dmDERERUFdXR+3atUtdj7y8PPLz8z9FiEREREREAJi8ICL6Yo0fPx4PHjyAh4cHbt68ib///htz5syBl5cXZGRK/9+DmZkZjh8/juTkZLx48eITRkxEREREXyomL4iIvlC1a9fGwYMHcenSJTRv3hxjx47FyJEjMXPmzDLVs2TJEhw9ehQmJiZo0aLFJ4qWiIiIiL5kvNsIEREREREREVVpHHlBRERERERERFUakxdEREREREREVKUxeUFEREREREREVRqTF0RERERERERUpTF5QURERERERERVGpMXRERERERERFSlMXlBRERERERERFUakxdEREREREREVKUxeUFEREREREREVRqTF0RERERERERUpTF5QURERERERERVGpMXRERERERERFSl/T/m5Mt1h6aOkwAAAABJRU5ErkJggg==", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "to_plot = combodf.groupby(['month','phylum'], as_index = False)['read_id'].sum().pivot(index = 'month', columns = 'phylum', values = 'read_id')\n", "\n", "fig, ax = plt.subplots(figsize=(8,5))\n", "\n", "# generating a list of phyla, ordered by abundance\n", "column_order = list(combodf.groupby('phylum',as_index = False)['read_id'].sum().sort_values(by = 'read_id', ascending = False)['phylum'])\n", "\n", "# ordering columns by abundance of different phyla\n", "to_plot[column_order].plot.bar(stacked = True, ax = ax)\n", "plt.legend(bbox_to_anchor=(1.05, 1.05))\n", "ax.set_ylabel('Reads Assigned to Phylum')" ] }, { "cell_type": "markdown", "id": "d90cf09e-c391-42b2-b184-3044211da19e", "metadata": {}, "source": [ "This is perhaps not helpful? Too many taxa are included that are not well represented in the plot. Instead, let's identify the most represented taxa." ] }, { "cell_type": "code", "execution_count": 122, "id": "3d1ef514-f6ba-4069-b1c6-f8e2930fc4c9", "metadata": { "tags": [] }, "outputs": [], "source": [ "# identifying the top phyla to plot\n", "total_phycounts = combodf.groupby('phylum',as_index = False)['read_id'].sum()\n", "\n", "# keeping them as a list of top phyla, ordered by abundance\n", "top_phyla = list(total_phycounts[total_phycounts['read_id'] > 500].sort_values(by = 'read_id', ascending = False)['phylum'])\n", "\n", "# add column labelling top phyla and calling all others 'Other'\n", "combodf['plot_phyla'] = [i if i in top_phyla else 'Other' for i in combodf['phylum']]" ] }, { "cell_type": "code", "execution_count": 123, "id": "09b2d9d3-214e-4911-a4b9-a86e15597fda", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Reads Assigned to Phylum')" ] }, "execution_count": 123, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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5tesXTU9q98/yPr3kOFOWdxeQha3p/5lfpvZvI/q31NoM3v3Mbv/X/+i9O9hf6/dvHmT2NhYvLy8jNW+RUTul97fExoRFxEREREREclCKsRFREREREREspAKcREREREREZEspEJcREREREREJAvp8WUiIiIikiUOx5551imIiDwXVIi/QPSfl4iIiIiIyItPhbg8N1oPztofxyx+sJeIiIiIiAigQlwky2hGg4iIPI7+rxAReTlosTYRERERERGRLKRCXEREREREniuenp5MmzbtWaeRISaTiTVr1jzrNOQFoUJcREREROQlER8fT+/evSlatCjW1tZ4eHjQvHlztmzZ8qxTy3J+fn4EBwdn2vnOnTvH66+/nmnnk+xN94iLiIiIiPxLMaXLZGl7ZX6NyfAxcXFx1KxZk9y5czNhwgTKly9PYmIi33//PT179uTXX399Cplmf7dv38bKygpXV9dnnYq8QDQiLiIiIiLyEujRowcmk4l9+/bx9ttvU7JkScqVK0ffvn3Zs2cPnTp1olmzZmbH3LlzB1dXVxYsWABAREQEr732Grlz58bFxYVmzZpx8uRJIz4uLg6TycSqVauoW7cudnZ2VKhQgd27d5udd+XKlZQrVw5ra2s8PT2ZPHlyqnz//vtvAgICcHBwwN3dnRkzZpjtnzJlCj4+Ptjb2+Ph4UGPHj24du2aWcyuXbuoU6cOdnZ2ODs74+/vz+XLlwkMDGT79u18/vnnmEwmTCYTcXFxABw9epQmTZrg4OBAgQIF6NChAxcuXDDO6efnR69evejbty958+alYcOGQOqp6YMGDaJkyZLY2dlRtGhRQkJCSExMTOe7JdmdCnERERERkWzu0qVLRERE0LNnT+zt7VPtz507N126dCEiIoJz584Z2zds2MC1a9do3bo1ANevX6dv377s37+fLVu2YGFhwZtvvklycrLZ+YYOHUr//v2Jjo6mZMmStGvXjjt37gAQFRVF69atadu2LYcPH2b48OGEhIQQFhZmdo6JEydSvnx5fvrpJwYPHkyfPn3YtGmTsd/CwoLp06dz5MgRFi5cyNatWxk4cKCxPzo6mvr161OuXDl2797Nzp07ad68OUlJSXz++ef4+vrStWtXzp07x7lz5/Dw8ODcuXPUqVOHihUrcuDAASIiIvjf//5n9P+ehQsXkiNHDnbt2sWcOXPS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rswvv/xC8eLFU31ZWVlluJ18+fJx7tw543VSUhJHjhwxXvv4+JCcnMz27dvTPL5s2bJERkaaFfORkZE4OjpSsGDBDOfzMOXLl2fLli0ZOia9ue3Zs8fsuD179lCiRAksLS1TnfPAgQPcuXOHyZMn8+qrr1KyZEn+/PPPDPZGXjTpvkf8559/Nr4/evSoWVGalJREREREpv7DgLvTPH777TezbceOHaNIkSLA3fsnXF1d2bRpE5UqVQLuPlZg+/btjB8/HoAqVaqQM2dONm3aROvWrQE4d+4cR44cMe738PX1JSEhgX379lGtWjUA9u7dS0JCAjVq1DBixowZw7lz53BzcwNg48aNWFtbU6VKlUztt8iLSgtFiYiIPL8cHBxo06YNQ4YMISEhwVjFfNCgQbz66qv07NmTrl27Ym9vT0xMDJs2bWLGjBkZbqdevXr07duX9evXU6xYMaZOnWq2UrmnpyfvvfeesUhahQoVOH36NOfPn6d169b06NGDadOm0bt3b3r16sVvv/3Gp59+St++fY17sDPD4MGD8fHxoUePHnzwwQdYWVnxww8/8M4775A3b940j0lvbmfPnqVv3750796dn376iRkzZjB58uQ0z1msWDHu3LnDjBkzaN68Obt27eLLL7/MtH7K8yndhXjFihUxmUyYTKY0p6Db2to+0T/UR+nTpw81atRg7NixtG7dmn379jF37lzmzp0L3J3+ERwczNixYylRogQlSpRg7Nix2NnZERAQAICTkxOdO3emX79+uLi4kCdPHvr374+Pj4+xOESZMmVo3LgxXbt2Zc6cOQB069aNZs2aUapUKQAaNWpE2bJl6dChAxMnTuTSpUv079+frl27apRbREQki+gDP5F/p3PnzsyfP59GjRpRuHBh4O7I8Pbt2xk6dCi1atUiJSWFYsWK0aZNmydqo1OnThw6dIiOHTuSI0cO+vTpk2ph49mzZzNkyBB69OjBxYsXKVy4MEOGDAGgYMGCbNiwgQEDBlChQgXy5MlD586djYXZMkvJkiXZuHEjQ4YMoVq1atja2lK9enXatWv30GPSm1vHjh35559/qFatGpaWlvTu3Ztu3bqlec6KFSsyZcoUxo8fz+DBg6lduzafffYZHTt2zNT+yvPFlPLgDRwPcfr0aVJSUihatCj79u0jX758xj4rKyvy58+f5lSLf2vd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4cKFHD16NNW++fPn8+677xqv3333XVatWsWVK1eyMEOR7C/DU9N79+7NBx98QFRUFK+88gomk4l9+/bx1VdfMWTIEAC+//57KlWqlOnJioiIiIjIv1O7dm38/f0ZMmQIgYGBxvajR4+yd+9e9u/fz6BBg4ztSUlJfP3113z44YfPIFuR7CnDhfgnn3yCl5cXM2fOZNGiRcDdxxvMmzePgIAAAD744AP9QxUREREReU6NGzeOihUrUrJkSWPb/PnzqV27Nl988YVZ7KJFi5g/f77+vhfJRE/0HPH27dvTvn37h+63tbV94oREREREROTp8vHxoX379syYMQOAxMREFi1axMiRI/H29jaL7dKlCxMmTODQoUNUqFDhWaQrku1k+B5xERERERF58Y0aNYqUlBQA1q5dy8WLF3nzzTdTxZUoUQIfHx8t2iaSidI1Ip4nTx6OHTtG3rx5cXZ2fuRzBC9dupRpyYmIiIiIvAji61Z81ik8UlhYWKptRYoU4ebNm8brpKSkhx7/888/P420RF5a6SrEp06diqOjo/H9owpxEREREREREXm4dBXi7733nvH9/SsrioiIiIiIiEjGZPge8Z9++onDhw8br7/99ltatmzJkCFDuH37dqYmJyIiIiIiIpLdZLgQ7969O8eOHQPg1KlTtGnTBjs7O1asWMHAgQMzPUERERERERGR7CTDhfixY8eoWLEiACtWrKBOnTosXbqUsLAwVq5cmdn5iYiIiIiIiGQrGS7EU1JSSE5OBmDz5s00adIEAA8PDy5cuJC52YmIiIiIiIhkMxkuxKtWrcro0aNZtGgR27dvp2nTpgDExsZSoECBTE9QREREREREJDvJcCE+bdo0fvrpJ3r16sXQoUMpXrw4AN988w01atTI9ARFREREREREspN0Pb7sfuXLlzdbNf2eiRMnYmlpmSlJiYiIiIiIiGRXGR4RP3v2LL///rvxet++fQQHB/Of//yHnDlzZmpyIiIiIiKSdUwmE2vWrHno/m3btmEymbhy5cpTz+XGjRu89dZb5MqVy2jT09OTadOmZVobw4cPNxaiFslKGR4RDwgIoFu3bnTo0IH4+HgaNmxIuXLlWLx4MfHx8QwbNuxp5CkiIiIi8tzy/Hh9lrYXN67pEx0XHx/PmDFjWL9+PX/88Qf58+enYsWKBAcHU79+/UzO8t9ZuHAh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TbR79261adNGvXr10sWLF3X8+HE99thjatSokfbu3au5c+fqvffe02uvvZZnnz4+Ptq+fbveeOMNTZgwQevXr5ck7dy5U5IUHx+v9PR067IkHT16VJ988olWr16t1atXa9OmTZo6dap53wwAAAAHsBiGYTi6CACAOVq0aKGcnBx9++23kqScnBz5+fmpc+fO+s9//iNJysjIUFBQkLZt26bPP/9cK1eu1MGDB2WxWCRJc+bM0ciRI5WZmSkXF5c8+5Sk++67Tw899JA1VFssFq1atUpRUVHWObGxsZo2bZoyMjLk6+srSRoxYoS++eYbJSUlmfHtAAAAcAjOiAPAbeauu+6y/tnV1VX+/v6qX7++dV1AQIAk6eTJkzp48KAiIyOtIVySmjZtqvPnz+vYsWPX3ackBQUF6eTJk/9YS0hIiDWEF2Q7AACAkowgDgC3mVKlStksWywWm3XXQndubq4Mw7AJ4ZJ07UKq/11/vX3m5uYWqpb8bAcAAFCSEcQBADdUt25dbd26Vf97F9PWrVvl6+urypUr53s/pUqVUk5OTnGUCAAAUOIQxAEANzRgwAClpaVp0KBBOnTokD799FONGzdOQ4cOlYtL/j9CQkJCtGHDBmVkZOjMmTPFWDEAAMCtjyAOALihypUr64svvtCOHTt09913q1+/fnruuef06quvFmg/06dP1/r161W1alXdc889xVQtAABAycBT0wEAAAAAMBFnxAEAAAAAMBFBHAAAAAAAExHEAQAAAAAwEUEcAAAAAAATEcQBAAAAADARQRwAAAAAABMRxAEAAAAAMBFBHAAAAAAAExHEAQAAAAAwEUEcAAAAAAATEcQBAAAAADARQRwAAAAAABP9P6AzL8zHNWm7AAAAAElFTkSuQmCC", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# group data by month and this new category, and create a pivot table for plotting\n", "to_plot = combodf.groupby(['month','plot_phyla'], as_index = False)['read_id'].sum().pivot(index = 'month', columns = 'plot_phyla', values = 'read_id')\n", "\n", "fig, ax = plt.subplots(figsize=(8,5))\n", "\n", "column_order = top_phyla + ['Other']\n", "\n", "to_plot[column_order].plot.bar(stacked = True, ax = ax)\n", "plt.legend(bbox_to_anchor=(1, 1))\n", "ax.set_ylabel('Reads Assigned to Phylum')" ] }, { "cell_type": "markdown", "id": "97c6257b-ec54-4509-8019-7c574acae01a", "metadata": {}, "source": [ "This essentially looks the same, but now our legend isn't crowded with all of the taxa present at low abundances in our samples. \n", "\n", "Something interesting we can see with this visualization is that there are variable numbers of unmapped reads. This could be due to a number of reasons. This variability influences the relative dynamics of taxa in this plot. \n", "\n", "An alternative is to calculate taxonomic distributions based on the abundance of only those reads that were assigned a taxonomy.\n", "\n", "To do this, I'm going to remove the 'no assignment' column from the table, and consider the relative abundance of taxa based on the total reads that were assigned taxa overall." ] }, { "cell_type": "code", "execution_count": 124, "id": "b62d1735-175c-42bd-baf6-ef50edfe6b9d", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Text(0, 0.5, 'Proportion Assigned Reads')" ] }, "execution_count": 124, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# remove the 'no assignment' column and calculate relative abundance of assigned reads only\n", "new_mat = to_plot.drop(columns = 'unmapped')\n", "\n", "# calculate relative abundance based on total reads recruited per sample\n", "new_mat_ra = new_mat.div(new_mat.sum(axis = 1), axis = 0)\n", "\n", "# plot\n", "new_mat_ra[column_order[1:]].plot.bar(stacked = True)\n", "plt.legend(bbox_to_anchor=(1, 1))\n", "plt.ylabel('Proportion Assigned Reads')" ] }, { "cell_type": "markdown", "id": "45acf55d-9d04-4416-981e-50e9fed4322d", "metadata": {}, "source": [ "These two ways of normalizing counts show slightly different distributions!\n", "\n", "Let's look at how dyanamics of the Phylum 'Proteobacteria' looks based on these two different visualizations." ] }, { "cell_type": "code", "execution_count": 125, "id": "c5b2a12e-0a0c-477d-a539-5ba7d182518f", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/plain": [ "Text(0.5, 0, 'Month')" ] }, "execution_count": 125, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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lFmzZhEcHMzXX39NixYt2LlzJ6GhoUyfPp1nn32WESNG0LJlS37//Xd69OhBmTJlaN68uSPfq6++yrvvvsunn37KpEmTePjhh6levTpVqlQBIDAwkPHjx1OqVCk2bdpE7969CQwMZNCgQQDMnDmTDh068PLLLzNp0iQyMjKYOXMmANOmTaNWrVr06dOH3r17Ox5z06ZNtG7dmjfffJMxY8Zw/PhxnnrqKZ566inGjRvn2O+DDz7g1Vdf5ZVXXrnsa2uz2ShTpgxTpkyhePHiLFu2jD59+lCyZEk6dux4zZ/N2bNneeyxx/jss88A+Oijj7j33nvZtWsXgYGBzv2Ar2HQoEF8+OGHlCtXjpCQEF555RWmTZvGqFGjqFixIosWLaJr166Eh4fTrFkzp57TRx99xNixYxkzZgxVq1blo48+Yvr06dx1112A/QuDhx9+mPfff5/27dtz9uxZR2F7LaNGjWLAgAG8++67tGnThsTERJYuXQrYv+S52u9rtj179jBjxgx+//13Tp8+TceOHXn33Xd5++23Xc42cOBA5s+fz/Tp0ylRogQvvfQSa9asydFVvEePHuzfv58ff/yRUqVKMX36dO655x42bdpExYoVAUhJSWH48OGMHj2asLAwIiIirnncypUrefzxx3nnnXfo0KEDf/zxB0OHDr2eX4MCy2K4+vVaAZeUlERwcDCJiYkEBQWZHUckd1kzYVRTOLEDbu0N931odiKwZl25uM1Mg7REe0vqueNw7gSknLz0elaa64/r4Xu+CA07X3SG/1t4OgrSC4pTFaMi+drV3r/T0tLYt28fsbGx+Pj4AJCSkVUgisvu3btz5swZxwQwq1at4t5776VFixZUqVKFd955h8OHDxMeHg7AnDlzaNOmDfv27SMqKsr+eFu3Uq1aNVatWsWtt97K66+/zowZM3JMIjNv3jzat29PQkIC3t7eju0VKlRg0KBB9OnTh6ZNm1KtWjW++eYbx/0dO3bk3LlzjuLPYrHQr1+/HF12GzVqRN26dRk5cuRln+MHH3zA5MmTWb16NQBNmjShXLlyfPvtt5fdPyYmhueeey7HBCzdunXD19eXr7/+2rFtyZIlNGvWjHPnzuHj40NMTAx16tRh+vTpjn32799PbGws69atu+I41CeffJJjx47laA10ltVqpVixYnz//ff85z//Aeyv0fTp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W5g6dSr//PMPvXr1usnJRW6i3X/Dtl81iY/kHp9g6PozVGsPtkz4uScs+8LsVCK5yzDssyObcXFxXVlvb29KlChBVFQUjzzyCF26dGHGjBmOFsixY8dSrlw5vL29MQyDuLg42rZtS0BAAEFBQXTs2JFjx44BMH78eIYNG8aGDRscLaLjx48HIDExkT59+hAREUFQUBB33XUXGzbk7B4/atQoypcvj5eXF5UrV2bSpEmX5I2Pj6dNmzb4+voSGxvL1KlTc9z/4osvUqlSJfz8/ChXrhyvvvrqJR98f/31V+rXr4+Pjw/FixenQ4cOgL374IEDB3j++ecd+bMtW7aMO+64A19fX6KionjmmWdytPDGxMTw1ltv0b17d4KDg+ndu/cl3WKtVis9e/YkNjYWX19fKleuzKeffur0z6p79+60a9eOd955h8jISEJCQhg2bBhZWVkMHDiQ0NBQypQpw9ixY116TbJ/1l9//TVRUVH4+fnx0EMP5eiqmv3Yw4YNc/wM+/btS0ZGhmMfwzB4//33KVeuHL6+vtSqVYuffsr5BeKsWbOoVKkSvr6+NG/enP379zv9/MePH09ISAi///47VatWxdvbmwMHDpCRkcGgQYMoXbo0/v7+NGzYkAULFjiOO3nyJA8//DBlypTBz8+PGjVq8MMPP+Q497lz5+jWrRsBAQGULFmSjz766JLHHzlyJBUrVsTHx4fIyEgefPBBp3LbbDbee+89KlSogLe3N2XLluXtt9923L9p0ybuuusufH19CQsLo0+fPiQnJzvuz37tP/zwQ0qWLElYWBhPPvlkjp/h1bJd3C02ISGB//73v47/Q999990lma/1//VKfx+c+X/+7rvvEhkZSWBgID179iQtLc2p19EZpn6N8/HHH9OzZ09HcThixAj+/PNPRo0axfDhwy/Zf8WKFcTExPDMM88AEBsbS9++fXn//fdvam6RmyYrHWadn8Sn0RMQWdXcPFJ4eHjDA2PtY3hXfgV/vQxn46HVm+BmeqcWkRuXmQLvlDLnsV86Al7+1324r6+v40Pr7t27mTJlCj///DPu7u4AtGvXDn9/fxYuXEhWVhb9+/enU6dOLFiwgE6dOrF582b++OMP/v77bwCCg4MxDIP77ruP0NBQZs2aRXBwMF9//TUtWrRg586dhIaGMn36dJ599llGjBhBy5Yt+f333+nRowdlypShefPmjnyvvvoq7777Lp9++imTJk3i4Ycfpnr16lSpUgWAwMBAxo8fT6lSpdi0aRO9e/cmMDCQQYPs72czZ86kQ4cOvPzyy0yaNImMjAxmzpwJ2LsP1qpViz59+tC7d2/HY27atInWrVvz5ptvMmbMGI4fP85TTz3FU089xbhx4xz7ffDBB7z66qu88sorl31tbTYbZcqUYcqUKRQvXpxly5bRp08fSpYsSceOHZ36+cybN48yZcqwaNEili5dSs+ePVm+fDl33HEHK1euZPLkyfTr149WrVoRFRXl1Gty4c/6t99+IykpiZ49e/Lkk0/mKDzmzp2Lj48P8+fPZ//+/fTo0YPixYs7CqVXXnmFadOmMWrUKCpWrMiiRYvo2rUr4eHhNGvWjIMHD9KhQwf69evHE088werVq/m///s/p553tpSUFIYPH87o0aMJCwsjIiKCHj16sH//fn788UdKlSrF9OnTueeee9i0aRMVK1YkLS2NevXq8eKLLxIUFMTMmTN59NFHKVeuHA0bNgRg4MCBzJ8/n+nTp1OiRAleeukl1qxZ4+jivXr1ap555hkmTZpEkyZNOHXq1DV7PGYbMmQI//vf//jkk0+47bbbiI+PZ/v27Y7nc88999CoUSP++ecfEhIS6NWrF0899ZTjixmA+fPnU7JkSebPn8/u3bvp1KkTtWvXpnfv3i5n6969OwcPHmTevHl4eXnxzDPPkJCQ4Ljfmf+vcPm/D9c6bsqUKQwdOpQvv/yS22+/nUmTJvHZZ59Rrlw5p38HrsowSXp6uuHu7m5MmzYtx/ZnnnnGuOOOOy57zNKlSw0vLy9j5syZhs1mM44ePWrccccdRt++fa/4OGlpaUZiYqLjcvDgQQMwEhMTc/X5iOSJhR8YxtAgw/igkmGk6ndW8oDNZhiLP7H/ng0NMoyfehpGZrrZqUQukZiYeMX379TUVGPr1q1GamrqvxvTk//9vb7Zl/Rkp5/XY489ZrRt29Zxe+XKlUZYWJjRsWNHY+jQoYanp6eRkJDguP+vv/4y3N3djbi4OMe2LVu2GICxatUqwzAMY+jQoUatWrVyPM7cuXONoKAgIy0tLcf28uXLG19//bVhGIbRpEkTo3fv3jnuf+ihh4x7773XcRsw+vXrl2Ofhg0bGk888cQVn+P7779v1KtXz3G7cePGRpcuXa64f3R0tPHJJ5/k2Pboo48affr0ybFt8eLFhpubm+PnHh0dbbRr1y7HPvv27TMAY926dVd8vP79+xsPPPDAFe+/0GOPPWZER0cbVqvVsa1y5crG7bff7ridlZVl+Pv7Gz/88MMVz3PxazJ06FDD3d3dOHjwoGPb7NmzDTc3NyM+Pt7x2KGhoca5c+cc+4waNcoICAgwrFarkZycbPj4+BjLli3L8Vg9e/Y0Hn74YcMwDGPIkCFGlSpVDJvN5rj/xRdfNADj9OnT13z+48aNMwBj/fr1jm27d+82LBaLcfjw4Rz7tmjRwhgyZMgVz3Xvvfca//d//2cYhmGcPXvW8PLyMn788UfH/SdPnjR8fX2NZ5991jAMw/j555+NoKAgIykp6Zo5L5SUlGR4e3sb//vf/y57/zfffGMUK1bMSE7+9//tzJkzDTc3N+Po0aOGYfz7c8/KynLs89BDDxmdOnVyKluzZs0cz2PHjh0GYKxYscJx/7Zt2wzA8XvvzP/Xy/19cOa4xo0bX/b/8MV/My502b+xV2Bay+WJEyewWq1ERkbm2B4ZGcnRo0cve0yTJk347rvv6NSpE2lpaWRlZXH//ffz+eefX/Fxhg8fzrBhw3I1u8hNcSYOFn1ov976bfAJMjePFE4WC9z2HASWgF+ehE1T4dxx6PQteOft+BCRPOXpZ29BNOuxXfD7778TEBBAVlYWmZmZtG3bls8//5yRI0cSHR1NeHi4Y99t27YRFRXlaBEDqFq1KiEhIWzbto1bb731so+xZs0akpOTCQsLy7E9NTWVPXv2OM7dp0+fHPc3bdr0km6jjRs3vuT2hbOx/vTTT4wYMYLdu3eTnJxMVlYWQUH/voetX78+R6ukM9asWcPu3btztOIZhoHNZmPfvn2OVtP69etf81xfffUVo0eP5sCBA6SmppKRkeHSBEjVqlXD7YIeHpGRkTkmDHJ3dycsLCxHS9S1XhOAsmXLUqZMGcftxo0bY7PZ2LFjByVKlABwzDty4T7JyckcPHiQhIQE0tLSaNWqVY7zZmRkUKdOHcD+M27UqFGO7sYX/zyvxcvLi5o1azpur127FsMwqFSpUo790tPTHb9vVquVd999l8mTJ3P48GHS09NJT0/H39/ewr9nzx4yMjJyZAkNDaVy5cqO261atSI6Oppy5cpxzz33cM8999C+ffscr8flbNu2jfT0dFq0aHHF+2vVquXIAvbf++zXPrtWqVatmqN1EKBkyZJs2rTJ5Wzbtm3Dw8Mjx+/qLbfcQkhIiOO2M/9fgUv+Pjj7/7xfv3457m/cuDHz5+fOBH+mj262XDR+zDCMS7Zl27p1K8888wyvvfYarVu3Jj4+noEDB9KvXz/GjBlz2WOGDBnCgAEDHLeTkpJy/EEWybf+GHJ+Ep/boPoDZqeRwq5WZ/AvDpO7wd4FMP4+eGQqBEZe81CRfMliuaGuqTdT8+bNGTVqFJ6enpQqVQpPT0/HfRd+4IUrf0662ucnsHcHLVmyZI5xcNku/FDryueyC2Xvs2LFCjp37sywYcNo3bo1wcHB/PjjjznGz/n6+l7zfJfL37dvX8fQqAuVLVvWcf3i1+tiU6ZM4fnnn+ejjz6icePGBAYG8sEHH7By5Uqns1z48wEcM/1evC17ohtnXpPLyX5NnX39sx9v5syZlC5dOsf93t7egP3neaN8fX1zZLLZbLi7u7NmzZocxRdAQEAAAB999BGffPIJI0aMoEaNGvj7+/Pcc885xos6kyswMJC1a9eyYMEC/vrrL1577TVef/11/vnnnxy/w5fLezVX+x2/cPvVfsauZMt+rrnx//Xi33dnj8tLphWXxYsXx93d/ZJWyoSEhEtaM7MNHz6cpk2bMnDgQABq1qyJv78/t99+O2+99RYlS5a85Bhvb2/HfyiRAmPXHNj+u30Sn/s0iY/cJBVaQvff7TPIxm+AMa3g0ekQVt7sZCKFmr+/PxUqVHBq36pVqxIXF8fBgwcdX5Zv3bqVxMRER+udl5cXVqs1x3F169bl6NGjeHh4EBMTc9lzV6lSxTF5YrZly5Y5zpttxYoVOfZZsWKFo2Vs6dKlREdH8/LLLzvuP3DgQI7ja9asydy5c+nRo8dlc1wp/5YtW5x+na5k8eLFNGnShP79+zu2XdgSlBeceU0A4uLiOHLkCKVK2ccKL1++HDc3txwtghs2bCA1NdVRMK1YsYKAgADKlClDsWLF8Pb2Ji4ujmbNml02S9WqVS9Zp3TFihU39Pzq1KmD1WolISGB22+//bL7LF68mLZt29K1a1fAXgTt2rXL8btVoUIFPD09WbFihePLgtOnT7Nz584cz8XDw4OWLVvSsmVLhg4dSkhICPPmzXNMCHU5FStWxNfXl7lz5152EtCqVasyYcIEzp075yjWli5deslrfy3OZqtSpQpZWVmsXr2aBg0aALBjx44ckzc58//1cpz9f365/8O5xbRZG7y8vKhXrx5z5szJsX3OnDk0adLkssekpKTk6IYAOL4hyY1vYkTyhcw0mGX/AoVGT0BElavvL5KbSte1r4VZLAbOHLAXmIfXmJ1KRM5r2bIlNWvWpEuXLqxdu5ZVq1bRrVs3mjVr5uhmFxMTw759+1i/fj0nTpwgPT2dli1b0rhxY9q1a8eff/7J/v37WbZsGa+88gqrV68G7BOqjB8/nq+++opdu3bx8ccfM23atEuWRZk6dSpjx45l586dDB06lFWrVvHUU08B9iIhLi6OH3/8kT179vDZZ58xffr0HMcPHTqUH374gaFDh7Jt2zY2bdqUY3LGmJgYFi1axOHDhzlx4gRgn211+fLlPPnkk6xfv55du3bx66+/8vTTT7v0+lWoUIHVq1fz559/snPnTl599VX++ecf134ILnLmNQHw8fHhscceY8OGDSxevJhnnnmGjh07OrrEgr2La8+ePdm6dSuzZ89m6NChPPXUU7i5uREYGMgLL7zA888/z4QJE9izZw/r1q3jyy+/ZMKECQD069ePPXv2MGDAAHbs2MH333+fY9Ka61GpUiW6dOlCt27dmDZtGvv27eOff/7hvffeY9asWY7XYM6cOSxbtoxt27bRt2/fHA1MAQEB9OzZk4EDBzJ37lw2b95M9+7dc3zu//333/nss89Yv349Bw4cYOLEidhsthxdZy/Hx8eHF198kUGDBjFx4kT27NnDihUrHL0eu3Tp4njtN2/ezPz583n66ad59NFHr9jgdTFXslWuXJl77rmH3r17s3LlStasWUOvXr1ytLA68//1cpw57tlnn2Xs2LE5/g9v2bLFqefplGuOysxDP/74o+Hp6WmMGTPG2Lp1q/Hcc88Z/v7+xv79+w3DMIzBgwcbjz76qGP/cePGGR4eHsbIkSONPXv2GEuWLDHq169vNGjQwOnHvNqEACL5woL37RNCfFjZMNJcG7QukmvOHjOMr263/y6+VcIwds4xO5EUcS5P6FNAXDyhz4UuNzGPYRjGgQMHjPvvv9/w9/c3AgMDjYceesgx8Yhh2CczfOCBB4yQkBADMMaNG2cYhn1ik6efftooVaqU4enpaURFRRldunTJMTnQyJEjjXLlyhme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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "compdf = to_plot[['Proteobacteria']].copy().rename(columns = {'Proteobacteria':'Proteobacteria_all_reads_considered'})\n", "\n", "# normalizing it to total reads considered so that it's comparable \n", "# because we subsampled our metagenomes prior to running Kaiju, we can divide all these counts by the same number of reads\n", "\n", "compdf['Proteobacteria_all_reads_considered'] = compdf['Proteobacteria_all_reads_considered'] / 100000\n", "compdf = compdf.merge(new_mat_ra[['Proteobacteria']].rename(columns = {'Proteobacteria':'Proteobacteria_mapped_reads_considered'}), \n", " left_index = True, right_index = True)\n", "\n", "compdf.plot()\n", "plt.legend(bbox_to_anchor=(1, 1))\n", "plt.ylabel('Relative Read Abundance')\n", "plt.xlabel('Month')" ] }, { "cell_type": "markdown", "id": "a59cb65a-cecb-45ef-ae69-f9d402a54783", "metadata": {}, "source": [ "The shape of distributions look similar but are not look entirely the same, and obviously show vastly different relative abundances. \n", "\n", "Ommitting the unmapped reads makes the assumption that the database being used is representative of microbial taxonomic diversity, even if it misses some of the read assignments. " ] }, { "cell_type": "markdown", "id": "d24a24d0-e9c4-43d4-a4a3-f69d83d30ed7", "metadata": {}, "source": [ "### PCA for beta diversity\n", "\n", "Phylum-level taxonomic groups are not super informative for understanding the dynamics of microbial communities. It would be better to compare overall relationships of samples based on more granular taxonomic levels.\n", "\n", "One way to do this is to use a dimensionality reduction method such as PCA. This gives an overall idea of the relationships in community structure between samples. \n", "\n", "First I am going to read in the output files from Kaiju like before, but now will consider the entirety of a taxonomic lineage, rather than Phylum-level taxonomic assignments." ] }, { "cell_type": "code", "execution_count": 127, "id": "30e9ee72-571d-4fe8-b55c-7213100b0699", "metadata": { "tags": [] }, "outputs": [], "source": [ "outs = glob.glob('/home/jovyan/shared/omics_tutorial/kaiju_results/results/*.out')\n", "\n", "def read_in_kaiju(outfile):\n", " library = op.basename(outfile).split(\"_\")[0]\n", " df = pd.read_csv(outfile, \n", " sep = \"\\t\", \n", " names = ['status','read_id','tax_id','taxonomy'])\n", " df['library'] = library\n", " for j, rank in enumerate('superkingdom,phylum,class,order,family,genus,species'.split(',')):\n", " df[rank] = df['taxonomy'].apply(lambda t: (get_rank(t, j)))\n", " df = df.fillna('unmapped')\n", " return df\n", "\n", "tax_level = 'taxonomy'\n", "\n", "combodf = pd.DataFrame()\n", "\n", "for o in outs:\n", " df = read_in_kaiju(o)\n", " phycount = df.groupby(['library',tax_level], as_index = False)['read_id'].count()\n", " combodf = pd.concat([combodf, phycount])" ] }, { "cell_type": "markdown", "id": "a9bc053d-cb22-4f51-8d34-97673caf3e31", "metadata": {}, "source": [ "As before, I'm adding some sample information to these data so that we can map the sequence collections back to the dates they were collected.\n", "\n", "Then, I'll count reads assigned to each taxonomic category per sample, omit those reads where no taxonomy was assigned and create a matrix that contains the relative abundance of each taxonomic group per sample. " ] }, { "cell_type": "code", "execution_count": 129, "id": "4e309e0b-e37a-47d4-b570-09fa534f4e55", "metadata": { "tags": [] }, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
taxonomyArchaea (superkingdom); Ca. Woesearchaeota; Pacearchaeota; NA; NA; NA; NA;Archaea (superkingdom); Euryarchaeota; Thermoplasmata; Marine Group II; NA; NA; NA;Archaea (superkingdom); Euryarchaeota; Thermoplasmata; Marine Group III; NA; NA; NA;Archaea (superkingdom); Euryarchaeota; Thermoplasmata; NA; NA; NA; NA;Archaea (superkingdom); Thaumarchaeota; Nitrososphaeria; Ca. Nitrosopumilales; Ca. Nitrosopelagicus family incertae sedis; Ca. Nitrosopelagicus; NA;Archaea (superkingdom); Thaumarchaeota; Nitrososphaeria; Ca. Nitrosopumilales; Ca. Nitrosopumilus family incertae sedis; Ca. Nitrosopumilus; NA;Archaea (superkingdom); Thaumarchaeota; Nitrososphaeria; Ca. Nitrosopumilales; NA; NA; NA;Bacteria; Actinobacteria; Acidimicrobiia; Acidimicrobiales; NA; NA; NA;Bacteria; Actinobacteria; Acidimicrobiia; Acidimicrobiales; OM1 clade; Candidatus Actinomarina; NA;Bacteria; Actinobacteria; Acidimicrobiia; Acidimicrobiales; OM1 clade; NA; NA;...Bacteria; Verrucomicrobia; NA; NA; NA; NA; NA;Bacteria; Verrucomicrobia; Opitutae; MB11C04 marine group; NA; NA; NA;Bacteria; Verrucomicrobia; Opitutae; NA; NA; NA; NA;Bacteria; Verrucomicrobia; Opitutae; Puniceicoccales; Puniceicoccaceae; Coraliomargarita; NA;Bacteria; Verrucomicrobia; Opitutae; Puniceicoccales; Puniceicoccaceae; NA; NA;Bacteria; Verrucomicrobia; Opitutae; Puniceicoccales; Puniceicoccaceae; marine group (Puniceicoccaceae); NA;Bacteria; Verrucomicrobia; Verrucomicrobiae; Verrucomicrobiales; DEV007; NA; NA;Bacteria; Verrucomicrobia; Verrucomicrobiae; Verrucomicrobiales; NA; NA; NA;Bacteria; Verrucomicrobia; Verrucomicrobiae; Verrucomicrobiales; Rubritalecea; Roseibacillus; NA;NA; NA; NA; NA; NA; NA; NA;
month
10.0000270.0567360.0067920.0000270.0246040.0002450.0011460.0000270.0292680.000273...0.0001090.0010370.0000270.0001360.0003270.0001360.0055100.0013370.0000270.000164
20.0000170.0500260.0079690.0000170.0206510.0001510.0009230.0000170.0363700.000302...0.0000170.0004190.0000170.0001010.0001010.0000840.0016780.0003520.0000170.000201
30.0000240.0365090.0048500.0000240.0099400.0002150.0003110.0000240.0394480.000239...0.0000240.0012900.0000240.0012190.0000720.0027000.0006210.0001430.0000240.000239
40.0000250.0276930.0034590.0000250.0094680.0001720.0002450.0000250.0284280.000294...0.0000250.0011530.0000250.0103260.0003430.0135890.0010060.0001960.0000250.000098
50.0000150.0000610.0000150.0000150.0000310.0000150.0000150.0000150.0198840.000061...0.0000150.0102090.0000310.0051200.0001530.0026130.0001070.0000460.0000150.000031
\n", "

5 rows × 124 columns

\n", "
" ], "text/plain": [ "taxonomy Archaea (superkingdom); Ca. Woesearchaeota; Pacearchaeota; NA; NA; NA; NA; \\\n", "month \n", "1 0.000027 \n", "2 0.000017 \n", "3 0.000024 \n", "4 0.000025 \n", "5 0.000015 \n", "\n", "taxonomy Archaea (superkingdom); Euryarchaeota; Thermoplasmata; Marine Group II; NA; NA; NA; \\\n", "month \n", "1 0.056736 \n", "2 0.050026 \n", "3 0.036509 \n", "4 0.027693 \n", "5 0.000061 \n", "\n", "taxonomy Archaea (superkingdom); Euryarchaeota; Thermoplasmata; Marine Group III; NA; NA; NA; \\\n", "month \n", "1 0.006792 \n", "2 0.007969 \n", "3 0.004850 \n", "4 0.003459 \n", "5 0.000015 \n", "\n", "taxonomy Archaea (superkingdom); Euryarchaeota; Thermoplasmata; NA; NA; NA; NA; \\\n", "month \n", "1 0.000027 \n", "2 0.000017 \n", "3 0.000024 \n", "4 0.000025 \n", "5 0.000015 \n", "\n", "taxonomy Archaea (superkingdom); Thaumarchaeota; Nitrososphaeria; Ca. Nitrosopumilales; Ca. Nitrosopelagicus family incertae sedis; Ca. Nitrosopelagicus; NA; \\\n", "month \n", "1 0.024604 \n", "2 0.020651 \n", "3 0.009940 \n", "4 0.009468 \n", "5 0.000031 \n", "\n", "taxonomy Archaea (superkingdom); Thaumarchaeota; Nitrososphaeria; Ca. Nitrosopumilales; Ca. Nitrosopumilus family incertae sedis; Ca. Nitrosopumilus; NA; \\\n", "month \n", "1 0.000245 \n", "2 0.000151 \n", "3 0.000215 \n", "4 0.000172 \n", "5 0.000015 \n", "\n", "taxonomy Archaea (superkingdom); Thaumarchaeota; Nitrososphaeria; Ca. Nitrosopumilales; NA; NA; NA; \\\n", "month \n", "1 0.001146 \n", "2 0.000923 \n", "3 0.000311 \n", "4 0.000245 \n", "5 0.000015 \n", "\n", "taxonomy Bacteria; Actinobacteria; Acidimicrobiia; Acidimicrobiales; NA; NA; NA; \\\n", "month \n", "1 0.000027 \n", "2 0.000017 \n", "3 0.000024 \n", "4 0.000025 \n", "5 0.000015 \n", "\n", "taxonomy Bacteria; Actinobacteria; Acidimicrobiia; Acidimicrobiales; OM1 clade; Candidatus Actinomarina; NA; \\\n", "month \n", "1 0.029268 \n", "2 0.036370 \n", "3 0.039448 \n", "4 0.028428 \n", "5 0.019884 \n", "\n", "taxonomy Bacteria; Actinobacteria; Acidimicrobiia; Acidimicrobiales; OM1 clade; NA; NA; \\\n", "month \n", "1 0.000273 \n", "2 0.000302 \n", "3 0.000239 \n", "4 0.000294 \n", "5 0.000061 \n", "\n", "taxonomy ... Bacteria; Verrucomicrobia; NA; NA; NA; NA; NA; \\\n", "month ... \n", "1 ... 0.000109 \n", "2 ... 0.000017 \n", "3 ... 0.000024 \n", "4 ... 0.000025 \n", "5 ... 0.000015 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Opitutae; MB11C04 marine group; NA; NA; NA; \\\n", "month \n", "1 0.001037 \n", "2 0.000419 \n", "3 0.001290 \n", "4 0.001153 \n", "5 0.010209 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Opitutae; NA; NA; NA; NA; \\\n", "month \n", "1 0.000027 \n", "2 0.000017 \n", "3 0.000024 \n", "4 0.000025 \n", "5 0.000031 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Opitutae; Puniceicoccales; Puniceicoccaceae; Coraliomargarita; NA; \\\n", "month \n", "1 0.000136 \n", "2 0.000101 \n", "3 0.001219 \n", "4 0.010326 \n", "5 0.005120 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Opitutae; Puniceicoccales; Puniceicoccaceae; NA; NA; \\\n", "month \n", "1 0.000327 \n", "2 0.000101 \n", "3 0.000072 \n", "4 0.000343 \n", "5 0.000153 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Opitutae; Puniceicoccales; Puniceicoccaceae; marine group (Puniceicoccaceae); NA; \\\n", "month \n", "1 0.000136 \n", "2 0.000084 \n", "3 0.002700 \n", "4 0.013589 \n", "5 0.002613 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Verrucomicrobiae; Verrucomicrobiales; DEV007; NA; NA; \\\n", "month \n", "1 0.005510 \n", "2 0.001678 \n", "3 0.000621 \n", "4 0.001006 \n", "5 0.000107 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Verrucomicrobiae; Verrucomicrobiales; NA; NA; NA; \\\n", "month \n", "1 0.001337 \n", "2 0.000352 \n", "3 0.000143 \n", "4 0.000196 \n", "5 0.000046 \n", "\n", "taxonomy Bacteria; Verrucomicrobia; Verrucomicrobiae; Verrucomicrobiales; Rubritalecea; Roseibacillus; NA; \\\n", "month \n", "1 0.000027 \n", "2 0.000017 \n", "3 0.000024 \n", "4 0.000025 \n", "5 0.000015 \n", "\n", "taxonomy NA; NA; NA; NA; NA; NA; NA; \n", "month \n", "1 0.000164 \n", "2 0.000201 \n", "3 0.000239 \n", "4 0.000098 \n", "5 0.000031 \n", "\n", "[5 rows x 124 columns]" ] }, "execution_count": 129, "metadata": {}, "output_type": "execute_result" } ], "source": [ "combodf_w_metadata = combodf.merge(mg_metadata, left_on = 'library', right_on = 'Run', how = 'left')\n", "\n", "# creating a pivot table with month as the index and taxonomy as the columns. NA values are zeros, but will substitute with 1 instead for eventual log transformation \n", "matdf = combodf_w_metadata.pivot(index = 'month', columns = 'taxonomy', values = 'read_id').fillna(1)\n", "\n", "# consider only reads that were assigned an annotation in final count, calculate relative abundance (ar = annotated relative abundance)\n", "armat = matdf.drop(columns = 'unmapped').div(matdf.drop(columns = 'unmapped').sum(axis = 1), axis = 0)\n", "armat.head()" ] }, { "cell_type": "markdown", "id": "5c22970a-8372-49db-925d-102a746e7972", "metadata": {}, "source": [ "To normalize the data, we'll preform a center-log-ratio transformation, which is common for phylogenetic comparisons of sample data such as this. \n", "\n", "The package skbio has a function for this ([see here](http://scikit-bio.org/docs/0.4.2/generated/skbio.stats.composition.html#module-skbio.stats.composition)), but we'll do it the old fashion way to see how it works more closely.\n", "\n", "We will take the log of the above pivot table of relative abundances, and then subtract the mean per column." ] }, { "cell_type": "code", "execution_count": 130, "id": "b44448fb-824b-4484-ba98-ced9937d30cc", "metadata": { "tags": [] }, "outputs": [], "source": [ "# Calculate the geometric mean along each row\n", "geom_mean = np.array(np.exp(np.mean(np.log(armat), axis=1)))\n", "\n", "# Calculate the centered log-ratio transformation\n", "\n", "clr_transformed = np.log(armat / geom_mean[:, np.newaxis])" ] }, { "cell_type": "code", "execution_count": 131, "id": "21d06b3c-d885-4747-bda3-6827f64530ae", "metadata": { "tags": [] }, "outputs": [ { "data": { "image/png": "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03gQERGRaTKaoqZ169a4ceOGRtvNmzdRu3ZtiRIRERFReWI0Rc2UKVNw7tw5LFu2DAkJCdixYwfCw8Mxbtw4qaMRERFROWA0RU3z5s2xb98+7Ny5E76+vli8eDFWrVqFQYMGSR2NiIiIygGjGSisD9oONCIiIqLyw+QGChMREREVh0UNERERmQQWNURERGQSWNQQERGRSWBRQ0RERCaBRQ0RERGZBBY1REREZBJY1BAREZFJYFFDREREJoFFDREREZkEFjVERERkEljUEBERkUlgUUNEREQmgUUNERERmQQWNURERGQSWNQQERGRSWBRQ0RERCaBRQ0RERGZBBY1REREZBJY1BAREZFJYFFDREREJoFFDREREZkEFjVERERkEljUEBERkUlgUUNEREQmgUUNERERmQQWNURERGQSWNQQERGRSaigy843btzAzp07cfLkSdy9exfZ2dmoXr06AgIC0LVrV7z//vuQy+WGykpERERUJJkQQrxtp5iYGMycORMnT55EcHAwWrRogZo1a8LGxgZpaWm4du0aTp48iYyMDMycOROTJ08ul8VNRkYGFAoF0tPTYWdnJ3UcIiIi0oK2399a9dT06dMHM2bMwO7du+Hg4FDkfmfPnsU333yDlStX4tNPP9U9NREREVEJadVT8/LlS1hZWWl9UF33LyvsqSEiIjI+2n5/azVQWNcCpTwWNERERGTatLr89N1332l9wIkTJ5Y4DBEREVFJaXX5ydPTU+P5X3/9hezsbNjb2wMAnj17hkqVKsHJyQl37twxSFB94OUnIiIi46PXy0+JiYnqx9KlS+Hv74/r168jLS0NaWlpuH79Opo2bYrFixfr7Q0QERER6UKrnpq/q1u3Ln755RcEBARotEdFReGDDz5AYmKiXgPqE3tqiIiIjI9ee2r+Ljk5Ga9evSrQrlQq8ejRI10PR0RERKQXOhc1nTp1wsiRI3Hp0iXkd/JcunQJo0aNQufOnfUekIiIiEgbOhc1//73v1GzZk20aNEC1tbWkMvlaNmyJVxcXPDDDz8YIiMRERHRW+m09hMAVK9eHb/99htu3ryJP//8E0IINGzYEN7e3obIR0RERKQVnYuafB4eHhBCoG7duqhQocSHISIiItILnS8/ZWdnY8SIEahUqRIaNWqEpKQkAK8n3fviiy/0HpCIiIhIGzoXNXPmzMHl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IiIiMk4699QolUpUqVIFAFCtWjU8fPgQwOsBxDdu3NBvur8ZN24ctm3bhh07dsDW1hYpKSlISUnBixcvDHZOIiIiMh4699T4+vriypUrqFOnDlq2bIkVK1bAysoK4eHhqFOnjiEyAgDWrVsHAOjQoYNG+6ZNmzBs2DCDnZeIiIiMg85Fzbx585CVlQUAWLJkCd599120bdsWjo6O2L17t94D5tNxPDMRERGZGZ3vfipMWloaqlatWu5X7OaMwkRERMbHYDMKF6a4CfCIiIiIyoJWRc17772HzZs3w87ODu+9916x++7du1cvwYiIiIh0oVVRo1Ao1JeWFAqFQQMRERERlYROY2qEEEhKSkL16tVRqVIlQ+YyCI6pISIiMj4GmVFYCAEvLy88ePCg1AGJiIiI9EmnosbCwgJeXl548uSJofIQERERlYjOMwqvWLECM2bMwLVr1wyRh4iIiKhEdJ6npmrVqsjOzkZeXh6srKxgY2OjsT0tLU2vAfWJY2qIiIiMj8HmqVm1alVpchEREREZhM5FzdChQw2Rg4iIiKhUSjWj8IsXL/Dq1SuNNl7WISIiIinoPFA4KysL48ePh5OTE6pUqYKqVatqPIiIiIikoHNRM3PmTPzxxx9Yu3Yt5HI5fvjhByxatAiurq7YunWrITISERERvZXOl58OHjyIrVu3okOHDhg+fDjatm2LevXqoXbt2ti+fTsGDRpkiJxERERExdK5pyYtLQ2enp4AXo+fyb+Fu02bNjhx4oR+0xERERFpSeeipk6dOrh79y4AwMfHBz/99BOA1z049vb2+sxGREREpDWdi5qPP/4Yly9fBgDMmTNHPbZmypQpmDFjht4DEhEREWlD5xmF35SUlIRLly6hbt26aNKkib5yGQRnFCYiIjI+BptR+O7du/Dw8FA/d3d3h7u7e4lCEhEREelLicbUtGnTBv/617/K9TpPREREZF50LmouXbqEoKAgLFmyBK6urujduzd+/vln5ObmGiIfERERkVZ0LmqaNm2KL7/8EklJSTh8+DCcnJwwatQoODk5Yfjw4YbISERERPRWpR4oDADR0dEYMWIErly5AqVSqY9cBsGBwkRERMZH2+9vnXtq8t2/fx8rVqyAv78/mjdvjsqVK2P16tUlPRwRERFRqeh891N4eDi2b9+O06dPo379+hg0aBD279+vcUcUERERUVnTuahZvHgxQkND8e2338Lf398AkYiIiIh0p3NRk5SUBJlMZogsRERERCWm85gaFjRERERUHpV4oDARERFRecKihoiIiEwCixoiIiIyCToPFP67x48f4/z581AqlWjevDlcXFz0lYuIiIhIJyUuavbs2YMRI0bA29sbr169wo0bN7BmzRp8/PHH+sxHREREpBWtLz89f/5c4/miRYtw4cIFXLhwATExMfj5558xd+5cvQckIiIi0obWRU2zZs3wn//8R/28QoUKSE1NVT9/9OgRrKys9JuOiIiISEtaL2h59+5djB07FnK5HGvWrMHt27cRGhoKpVKJvLw8WFhYYPPmzejRo4ehM5cYF7QkIiIyPtp+f2s9psbDwwO//fYbduzYgfbt22PSpElISEhAQkIClEolGjRoAGtra72EJyIiItKVzrd0Dxw4UD2OpkOHDlCpVPD392dBQ0RERJLS6e6nw4cPIz4+Hk2aNMHGjRsRGRmJgQMHokePHvj8889hY2NjqJxERERExdK6p2bmzJkYNmwYLl68iFGjRmHx4sXo0KEDYmJiIJfL4e/vj8OHDxsyKxEREVGRtB4oXK1aNfz+++9o1qwZ0tLS0KpVK9y8eVO9PS4uDqNGjcKpU6cMFra0OFCYiIjI+Gj7/a11T02lSpWQmJgIALh//36BMTSNGjUq1wUNERERmTati5qwsDB89NFHcHV1Rfv27bF48WJD5iIiIiLSidaXnwDgyZMnuHPnDry8vGBvb2/AWIbBy09ERETGR+/z1ACAo6MjHB0dNdry8vJQoUKp1sUkIiIiKjWtLz9FRETg6tWrAACVSoUlS5agZs2akMvlqFWrFr744gvo0OlDREREpFdad7FMmzYNGzZsAAAsX74cq1atwty5c9GwYUPcuHEDYWFhkMlkmDVrlsHCEhERERVF6zE1NjY2uHnzJtzc3NC4cWPMnz8f/fv3V28/dOgQJk+ejFu3bhksbGlxTA0REZHx0fst3VWrVsWDBw8AAH/99Re8vLw0tnt7e6u3ExEREZU1rYuavn37YunSpVAqlejduzfWrl2rMYZm9erV8Pf3N0RGIiIiorfS+vJTeno6OnfujGfPniEoKAg///wzatSoAW9vbyQkJODJkyc4cuQIWrZsaejMJcbLT0RERMZH75efFAoFzpw5g2nTpuHJkyfw8PCA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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "indf = clr_transformed\n", "\n", "pca_components = 5\n", "pca = PCA(n_components=pca_components)\n", "fpca = pca.fit(indf)\n", "X = pca.transform(indf)\n", "(x_evr, y_evr) = fpca.explained_variance_ratio_[:2]\n", "\n", "# establish point labels as the months\n", "labels = list(matdf.index)\n", "\n", "plt.scatter(x = X[:,0], y = X[:,1])\n", "\n", "plt.xlabel('PC1 ({}% variance explained)'.format(round(x_evr * 100,1)))\n", "plt.ylabel('PC2 ({}% variance explained)'.format(round(y_evr * 100,1)))\n", "\n", "for i, label in enumerate(labels):\n", " plt.annotate(label, (X[i, 0], X[i, 1]), textcoords=\"offset points\", xytext=(0,10), ha='right')\n" ] }, { "cell_type": "markdown", "id": "d33e3ad7-b38c-42d3-a59c-87c890a98210", "metadata": {}, "source": [ "Here we've plotted the first two principal components. I've added the amount of variance explained to each component to the axis labels. This image tells a story of seasons, and raises some questions about what would happen if we added additional time series data to it. \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, { "cell_type": "markdown", "id": "d1c6b5d5-afd5-4e34-b91d-b9ecdd8daf93", "metadata": {}, "source": [ "That's all I have for this tutorial. There's only one more thing to say...\n", "\n", "![HBD](tutorial_images/HBD.png)" ] }, { "cell_type": "code", "execution_count": null, "id": "720e6cf5-6a93-493b-92dd-f5b093efb7e1", "metadata": {}, "outputs": [], "source": [] } ], "metadata": { "kernelspec": { "display_name": "Python [conda env:root] *", "language": "python", "name": "conda-root-py" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.16" } }, "nbformat": 4, "nbformat_minor": 5 }