Code Monkey home page Code Monkey logo

tillahoffmann / shedding Goto Github PK

View Code? Open in Web Editor NEW
5.0 2.0 0.0 491 KB

Uncertainties surrounding the concentration of viral RNA fragments in the faeces of individuals infected with SARS-CoV-2 poses a major challenge for wastewater-based surveillance of Covid-19. This repository serves to collate data from quantitative studies on RNA load in faecal samples to constrain the shedding distribution.

Home Page: https://academic.oup.com/jrsssc/article/72/2/330/7079932

Makefile 3.48% Python 48.70% Jupyter Notebook 46.02% Cython 1.39% Dockerfile 0.41%
sars-cov-2 covid-19 wastewater

shedding's Introduction

๐Ÿ’ฉ Shedding of SARS-CoV-2 RNA in faeces

image

image

image

Uncertainties surrounding the concentration of viral RNA fragments in the faeces of individuals infected with SARS-CoV-2 poses a major challenge for wastewater-based surveillance of Covid-19. This repository serves to collate data from quantitative studies on RNA load in faecal samples to constrain the shedding distribution.

๐Ÿ“Š Datasets

Datasets can be found in the publications directory as JSON files following a common schema (see schema.json for details). All RNA loads are reported as log10 gene copies per mL. The results from individual samples are linked to patients wherever possible to provide longitudional information.

    • 1 Key
    • 1 Assay
    • 1 LOQ
    • 2 Patients
    • 2 Samples
    • Detailed data
    • Temporal data
* - n
  • +
  • -
  • n
  • +
  • -

{% for key, pub in publications.items() -%} {% set patients = pub.get('patients', {}) %} {% set samples = pub.get('samples', {}) %} {% set assay = pub['assay'] %} * - {{pub['key']}} <{{pub['key'].replace(' ', '_')}}> - {{', '.join(assay) if assay is iterable and assay is not string else assay}} - {{('%.2f' | format(pub['loq'])) if pub['loq'] else '?'}} - {{patients.get('n', '?')}} - {{patients.get('positive', '?')}}{% if 'positive' in patients and 'n' in patients %} ({{'%.1f' | format(100 * patients['positive'] / patients['n'])}}%){% endif %} - {{patients.get('negative', '?')}}{% if 'negative' in patients and 'n' in patients %} ({{'%.1f' | format(100 * patients['negative'] / patients['n'])}}%){% endif %} - {{samples.get('n', '?')}} - {{samples.get('positive', '?')}} - {{samples.get('negative', '?')}} - {{ '\+' if 'loads' in pub else '\-' }} - {{ pub.get('temporal', '\-') }} {% endfor -%}

plot_datasets.py

Overview of viral RNA load data available in different publications. Black vertical dotted lines represent the level of quantification or threshold for a sample to be considered positive. Arrows represent limits of viral RNA load reported in some studies. Squares and triangles represent the mean and median, respectively.

๐Ÿค Contributing

Contributions in the form of new datasets or corrections are most welcome in the form of pull requests from forks. See here for more details on how to contribute.

๐Ÿงช Reproducing results

Results can be reproduced by following these steps:

  • Make sure you have python 3.8 or newer installed.
  • Install the python dependencies by running pip install -r requirements.txt (ideally in a dedicated virtual environment).
  • Install the polychord sampler by running make pypolychord (you may have to run make pypolychord twice if it fails in the first run).
  • Reproduce the figures (in the workspace/figures directory) and results (in the results.html file) by running make workspace/results.html.

If you are familiar with docker, you may also reproduce results in a container by following these steps:

  • Run make image to build the docker image.
  • Run make container to start a container with the workspace folder mounted.
  • Reproduce the figures (in the workspace/figures directory) and results (in the results.html file) by running make workspace/results.html.

Note

Reproducing the results will take a considerable amount of time (several hours if you have a fast machine, days if you have a slow machine). You have two options to speed up the process (and they can be combined).

  1. Use make -j [number of processors you use] results.html which will distribute the workload across the given number of processors.
  2. Use SEEDS=0 NLIVE=1 NREPEAT=1 make results.html which will only run the inference for one random number generator seed and use fewer points for the nested sampling (giving rise to less reliably but faster results).

Note

Storing intermediate results produced by pypolychord can take up to 10GB of disk space.

If you are not able to reproduce the results using the steps above, try running make tests which may help identify the problem. Otherwise, please raise a new issue.

๐Ÿ“‹ Contents

docs/shedding publications//

shedding's People

Contributors

tillahoffmann avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

shedding's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.