Skip to content

Commit

Permalink
updatezz
Browse files Browse the repository at this point in the history
  • Loading branch information
Cuypers-Wim committed Oct 6, 2024
1 parent c0126da commit 0af826a
Show file tree
Hide file tree
Showing 26 changed files with 240 additions and 126 deletions.
2 changes: 1 addition & 1 deletion _quarto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ book:
- content/genomics/qc.qmd
- content/genomics/mapping.qmd
- content/genomics/variant-calling.qmd
- content/genomics/patient_mystery.qmd
- content/genomics/phylogenetics.qmd
# # - part: "Bioinformatics file formats and tools"
# # chapters:
# # - content/bioinf/bioinf-file-formats.qmd
Expand Down
12 changes: 12 additions & 0 deletions content/genomics/mapping.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -449,3 +449,15 @@ After creating and filtering our alignment files, we can visualise them in a too


<!-- TODO: add info on coverage and read depth -->

<!-- TODO: correct the text below which was written quickly on the ^lane. maps also to te genome of chromosome 8? -->

::: {.callout-tip}
## Malaria in Ethiopia

Also for the patient sample that we are analysing in this course, we will want to perform read mapping. Not only with the donstream analyses in mind (variant calling, phylogeny), but also to check the quality of the data.

In this excercise, the goal is to map the reads to the plasmodium falciparum reference genome and inspect the quality. In addition, map the data to the chromose 8 only (file: tba) and compare the alignment statistics and visulaisations.


:::
21 changes: 0 additions & 21 deletions content/genomics/patient_mystery.qmd

This file was deleted.

14 changes: 14 additions & 0 deletions content/genomics/phylogenetics.qmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# Phylogenetics {#sec-phylogenetics}


::: {.callout-tip}
## Storyline: Malaria in Ethiopia

Now, it's time to apply your phylogenetics skills to determine where the patient in our storyline contracted their malaria infection.

You will be working with a dataset called 'contextual data.' Although the data is simulated for this exercise, in real scenarios, we often rely on public datasets with robust metadata to make such inferences.

Start your analysis and explore what insights you can draw from the phylogeny. Don’t forget to create a visualization of the phylogenetic tree!

:::

16 changes: 16 additions & 0 deletions content/genomics/qc.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -746,6 +746,22 @@ You can install it on your own environment using the following command: `conda i

---


<!-- TODO: correct the text below which was written quickly on the ^lane. -->

::: {.callout-tip}
## Malaria in Ethiopia

Also for the patient sample that we are analysing in this course, we will want to perform QC.

What do you see after performing QC. Is trimming nessecary?


:::




::: {.callout-note}
## Additional resources

Expand Down
25 changes: 23 additions & 2 deletions content/genomics/setup.qmd
Original file line number Diff line number Diff line change
@@ -1,8 +1,13 @@
# Setup and preparations {.unnumbered}

For this hands-on practical on processing genomics data for variant calling, we will make use of the same GitHub Codespaces that were introduced in @sec-unix-setup.
For this hands-on practical on processing genomics data (mapping & search, variant calling, and phylogenetics) we will make use of the same environment as previously. If any additional software is required, the teaching team will help you.

Due to the large file size of the training data, not all files were included directly in the repository. When you launch your codespace for the first time (or whenever you create a new one), you will need to run the download scripts that are stored in `./training/data/`, as described in the [README.md](../../training/data/README.md).

Due to the large file size of the training data, not all files were included directly in the repository.



When you launch your codespace for the first time (or whenever you create a new one), you will need to run the download scripts that are stored in `./training/data/`, as described in the [README.md](../../training/data/README.md).

If you want to follow along on your own machine instead, make sure to install all the required software tools. The easiest option is to use `conda`/`mamba` via the [miniforge installer](https://github.com/conda-forge/miniforge), and then installing all the packages described in the [environment.yml file](../../environment.yml). For R, simply install the list of packages described in the [devcontainer.json file](../../.devcontainer/rstudio/devcontainer.json) (or `renv` file if it is available).

Expand Down Expand Up @@ -32,3 +37,19 @@ mamba activate fimab
# activate environment
mamba activate fimab
```
## about the excercises and storyline
In the following sections, we will work with Amplicon data from the Malariology Unit at ITM. Additionally, we have included exercises that follow a storyline relevant to a bioinformatician working in a hospital in Ethiopia. These exercises will be clearly marked in boxes titled "Storyline: Malaria in Ethiopia." Below, you'll find the beginning of the storyline, and by the end of these sessions, you’ll be able to solve the mystery!
::: {.callout-tip}
## Malaria in Ethiopia
A patient arrives at your research clinic with a high fever. Despite initially suspecting malaria, a rapid diagnostic test (RDT) is negative. However, a microscopic examination of the blood sample reveals *Plasmodium* parasites, confirming malaria. Microscopy allows you to determine that the parasite is *Plasmodium* *falciparum*, a species known to cause severe malaria. This situation raises several questions: How was the infection acquired? Is it a local strain or one from recent travel? Why did the rapid test fail?
The patient, originally from Ethiopia—where both *P. falciparum* and *P. vivax* are prevalent—has recently traveled to Southeast Asia, where both species also circulate. The failure of the rapid test could be linked to deletions in the *hrp2* and *hrp3* genes, which are common in *P. falciparum* and cause some RDTs to miss infections.
Your task is to analyze the parasite’s genetic material to confirm which strain it is, determine its likely geographic origin, and assess potential antimicrobial treatments. This analysis will also help clarify why the rapid test failed and whether the strain carries any mutations affecting test performance or drug resistance.
Succes!!
:::
17 changes: 17 additions & 0 deletions content/genomics/variant-calling.qmd
Original file line number Diff line number Diff line change
Expand Up @@ -369,6 +369,23 @@ Further reading:
The final step in our pipeline is to annotate variants. For this, a tool like [snpEff](http://pcingola.github.io/SnpEff/) can be used. You can see it being used in the AmpliSeq pipeline [here](https://github.com/Ekattenberg/Plasmodium-AmpliSeq-Pipeline/blob/2d7779e8463bbe97523f96c9dccd70ebf91161c9/Pf_AmpliSeq_Peru/5.PERU_Ampliseq_filter_annotation_PF_281122.bash#L160).
<!-- TODO: correct the text below which was written quickly on the ^lane. maps also to te genome of chromosome 8? -->
::: {.callout-tip}
## Malaria in Ethiopia
Take the mapping data generated previously, and look for the xx mutation associated with xx resistance, and the xx mutations associated with RDT failure.
What would be the best approach to find these mutations? Work relative to the Plasmodium falciparum 3D7 reference genome.
:::
<!-- TODO variants to table
https://www.melbournebioinformatics.org.au/tutorials/tutorials/variant_calling_gatk1/variant_calling_gatk1/#1-variantstotable
https://gatk.broadinstitute.org/hc/en-us/articles/21904953853595-VariantsToTable
Expand Down
20 changes: 17 additions & 3 deletions docs/content/genomics/mapping.html
Original file line number Diff line number Diff line change
Expand Up @@ -286,8 +286,8 @@
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../../content/genomics/patient_mystery.html" class="sidebar-item-text sidebar-link">
<span class="menu-text"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Patient mystery</span></span></a>
<a href="../../content/genomics/phylogenetics.html" class="sidebar-item-text sidebar-link">
<span class="menu-text"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Phylogenetics</span></span></a>
</div>
</li>
</ul>
Expand Down Expand Up @@ -946,6 +946,20 @@ <h2 data-number="12.8" class="anchored" data-anchor-id="sec-picard-metrics"><spa
<section id="sec-alignment-visualisation" class="level2" data-number="12.9">
<h2 data-number="12.9" class="anchored" data-anchor-id="sec-alignment-visualisation"><span class="header-section-number">12.9</span> Alignment visualisation</h2>
<p>After creating and filtering our alignment files, we can visualise them in a tool like <a href="https://igv.org/">IGV (Integrative Genomics Viewer)</a>. We refer to <a href="https://training.galaxyproject.org/training-material/topics/sequence-analysis/tutorials/mapping/tutorial.html#visualization-using-a-genome-browser-igv">this section</a> of the Galaxy training materials <span class="citation" data-cites="Hiltemann_2023 sequence-analysis-mapping">(<a href="../references.html#ref-Hiltemann_2023" role="doc-biblioref">Hiltemann et al. 2023</a>; <a href="../references.html#ref-sequence-analysis-mapping" role="doc-biblioref">Wolff, Batut, and Rasche</a>)</span>.</p>
<div class="callout callout-style-default callout-tip callout-titled">
<div class="callout-header d-flex align-content-center">
<div class="callout-icon-container">
<i class="callout-icon"></i>
</div>
<div class="callout-title-container flex-fill">
Malaria in Ethiopia
</div>
</div>
<div class="callout-body-container callout-body">
<p>Also for the patient sample that we are analysing in this course, we will want to perform read mapping. Not only with the donstream analyses in mind (variant calling, phylogeny), but also to check the quality of the data.</p>
<p>In this excercise, the goal is to map the reads to the plasmodium falciparum reference genome and inspect the quality. In addition, map the data to the chromose 8 only (file: tba) and compare the alignment statistics and visulaisations.</p>
</div>
</div>


<div id="refs" class="references csl-bib-body hanging-indent" data-entry-spacing="0" role="list" style="display: none">
Expand Down Expand Up @@ -1415,7 +1429,7 @@ <h2 data-number="12.9" class="anchored" data-anchor-id="sec-alignment-visualisat
</div>
</div>
</footer>
<script>var lightboxQuarto = GLightbox({"descPosition":"bottom","selector":".lightbox","loop":false,"closeEffect":"zoom","openEffect":"zoom"});
<script>var lightboxQuarto = GLightbox({"selector":".lightbox","openEffect":"zoom","loop":false,"descPosition":"bottom","closeEffect":"zoom"});
(function() {
let previousOnload = window.onload;
window.onload = () => {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes">


<title>14&nbsp; Patient mystery – Pathogen Genomics Course</title>
<title>14&nbsp; Phylogenetics – Pathogen Genomics Course</title>
<style>
code{white-space: pre-wrap;}
span.smallcaps{font-variant: small-caps;}
Expand Down Expand Up @@ -81,7 +81,7 @@
<button type="button" class="quarto-btn-toggle btn" data-bs-toggle="collapse" role="button" data-bs-target=".quarto-sidebar-collapse-item" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
<i class="bi bi-layout-text-sidebar-reverse"></i>
</button>
<nav class="quarto-page-breadcrumbs" aria-label="breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item"><a href="../../content/genomics/setup.html">Processing genomic data</a></li><li class="breadcrumb-item"><a href="../../content/genomics/patient_mystery.html"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Patient mystery</span></a></li></ol></nav>
<nav class="quarto-page-breadcrumbs" aria-label="breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item"><a href="../../content/genomics/setup.html">Processing genomic data</a></li><li class="breadcrumb-item"><a href="../../content/genomics/phylogenetics.html"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Phylogenetics</span></a></li></ol></nav>
<a class="flex-grow-1" role="navigation" data-bs-toggle="collapse" data-bs-target=".quarto-sidebar-collapse-item" aria-controls="quarto-sidebar" aria-expanded="false" aria-label="Toggle sidebar navigation" onclick="if (window.quartoToggleHeadroom) { window.quartoToggleHeadroom(); }">
</a>
<button type="button" class="btn quarto-search-button" aria-label="Search" onclick="window.quartoOpenSearch();">
Expand Down Expand Up @@ -229,8 +229,8 @@
</li>
<li class="sidebar-item">
<div class="sidebar-item-container">
<a href="../../content/genomics/patient_mystery.html" class="sidebar-item-text sidebar-link active">
<span class="menu-text"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Patient mystery</span></span></a>
<a href="../../content/genomics/phylogenetics.html" class="sidebar-item-text sidebar-link active">
<span class="menu-text"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Phylogenetics</span></span></a>
</div>
</li>
</ul>
Expand Down Expand Up @@ -263,22 +263,15 @@
</nav>
<div id="quarto-sidebar-glass" class="quarto-sidebar-collapse-item" data-bs-toggle="collapse" data-bs-target=".quarto-sidebar-collapse-item"></div>
<!-- margin-sidebar -->
<div id="quarto-margin-sidebar" class="sidebar margin-sidebar">
<nav id="TOC" role="doc-toc" class="toc-active" data-toc-expanded="99">
<h2 id="toc-title">Table of contents</h2>

<ul>
<li><a href="#getting-started" id="toc-getting-started" class="nav-link active" data-scroll-target="#getting-started"><span class="header-section-number">14.1</span> Getting started</a></li>
<li><a href="#getting-started-1" id="toc-getting-started-1" class="nav-link" data-scroll-target="#getting-started-1"><span class="header-section-number">14.2</span> Getting started</a></li>
</ul>
</nav>
<div id="quarto-margin-sidebar" class="sidebar margin-sidebar zindex-bottom">

</div>
<!-- main -->
<main class="content" id="quarto-document-content">

<header id="title-block-header" class="quarto-title-block default"><nav class="quarto-page-breadcrumbs quarto-title-breadcrumbs d-none d-lg-block" aria-label="breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item"><a href="../../content/genomics/setup.html">Processing genomic data</a></li><li class="breadcrumb-item"><a href="../../content/genomics/patient_mystery.html"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Patient mystery</span></a></li></ol></nav>
<header id="title-block-header" class="quarto-title-block default"><nav class="quarto-page-breadcrumbs quarto-title-breadcrumbs d-none d-lg-block" aria-label="breadcrumb"><ol class="breadcrumb"><li class="breadcrumb-item"><a href="../../content/genomics/setup.html">Processing genomic data</a></li><li class="breadcrumb-item"><a href="../../content/genomics/phylogenetics.html"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Phylogenetics</span></a></li></ol></nav>
<div class="quarto-title">
<h1 class="title"><span id="sec-patient-mystery" class="quarto-section-identifier"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Patient mystery</span></span></h1>
<h1 class="title"><span id="sec-phylogenetics" class="quarto-section-identifier"><span class="chapter-number">14</span>&nbsp; <span class="chapter-title">Phylogenetics</span></span></h1>
</div>


Expand All @@ -295,30 +288,23 @@ <h1 class="title"><span id="sec-patient-mystery" class="quarto-section-identifie
</header>


<p>Now it is time for an excercise where you will employ all the techniques from the previous sessions. You can read the storyline for this excercise below.</p>
<div class="callout callout-style-default callout-tip callout-titled">
<div class="callout-header d-flex align-content-center">
<div class="callout-icon-container">
<i class="callout-icon"></i>
</div>
<div class="callout-title-container flex-fill">
Malaria in Ethiopia
Storyline: Malaria in Ethiopia
</div>
</div>
<div class="callout-body-container callout-body">
<p>A patient arrives at your research clinic with a high fever. Despite initially suspecting malaria, a rapid diagnostic test (RDT) is negative. However, a microscopic examination of the blood sample reveals <em>Plasmodium</em> parasites, confirming malaria. Microscopy allows you to determine that the parasite is <em>Plasmodium</em> <em>falciparum</em>, a species known to cause severe malaria. This situation raises several questions: How was the infection acquired? Is it a local strain or one from recent travel? Why did the rapid test fail?</p>
<p>The patient, originally from Ethiopia—where both <em>P. falciparum</em> and <em>P. vivax</em> are prevalent—has recently traveled to Southeast Asia, where both species also circulate. The failure of the rapid test could be linked to deletions in the <em>hrp2</em> and <em>hrp3</em> genes, which are common in <em>P. falciparum</em> and cause some RDTs to miss infections.</p>
<p>Your task is to analyze the parasite’s genetic material to confirm which strain it is, determine its likely geographic origin, and assess potential antimicrobial treatments. This analysis will also help clarify why the rapid test failed and whether the strain carries any mutations affecting test performance or drug resistance.</p>
<p>Now, it’s time to apply your phylogenetics skills to determine where the patient in our storyline contracted their malaria infection.</p>
<p>You will be working with a dataset called ‘contextual data.’ Although the data is simulated for this exercise, in real scenarios, we often rely on public datasets with robust metadata to make such inferences.</p>
<p>Start your analysis and explore what insights you can draw from the phylogeny. Don’t forget to create a visualization of the phylogenetic tree!</p>
</div>
</div>
<section id="getting-started" class="level2" data-number="14.1">
<h2 data-number="14.1" class="anchored" data-anchor-id="getting-started"><span class="header-section-number">14.1</span> Getting started</h2>
</section>
<section id="getting-started-1" class="level2" data-number="14.2">
<h2 data-number="14.2" class="anchored" data-anchor-id="getting-started-1"><span class="header-section-number">14.2</span> Getting started</h2>


</section>

</main> <!-- /main -->
<script id="quarto-html-after-body" type="application/javascript">
Expand Down
Loading

0 comments on commit 0af826a

Please sign in to comment.