Skip to main content

ANOSPP data analysis

Project description

anospp-analysis

Python package for ANOSPP data analysis

ANOSPP is the multiplexed amplicon sequencing assay for Anopheles mosquito species identification and Plasmodium detection. This repository contains the code for analysis of the sequencing results pre-processed with nf-core ampliseq pipeline.

Usage

Key analysis steps are implemented as standalone scripts:

  • anospp-prep takes DADA2 output files and targets primer sequences, demultiplexes the amplicons and yields haplotypes table
  • anospp-qc takes haplotypes table, DADA2 stats table and samples manifest and produces QC plots

Development

Setup

Installation is hybrid with conda + poetry:

git clone git@github.com:malariagen/anospp-analysis.git
cd anospp-analysis
mamba env create -f environment.yml
conda activate anospp_analysis
poetry install

Activate development environment:

poetry shell

Usage & testing

The code in this repository can be accessed via wrapper scripts:

anospp-qc \
    --haplotypes test_data/haplotypes.tsv \
    --samples test_data/samples.csv \
    --stats test_data/stats.tsv \
    --outdir test_data/qc

Besides, individual components are available as a python API:

$ python
>>> from anospp_analysis.util import *
>>> PLASM_TARGETS
['P1', 'P2']

Automated testing & CI

Adding Python deps

Introducing python dependencies should be done via poetry:

poetry add package_name

This should update both pyproject.toml and poetry.lock files

If the package should be used in development environment only, use

poetry add package_name --dev

Adding non-Python deps

Introducing non-python dependencies should be done via conda: edit environment.yml, then re-create the conda environment and poetry deps:

mamba env create -f environment.yml
conda activate anospp_analysis
poetry install

Changes in conda environment might also introduce changes to the python installation, in which case one should update poetry lock file

poetry lock

Release checklist

While in dev branch

  • test functionality (TODO CI)
  • bump version in pyproject.toml

Then

  • merge into master
  • github release
  • pypi release

Conda recipe update conda.recipe/meta.yaml:

  • check deps vs environment.yaml and pyproject.toml
  • bump version
  • update sha256 from pypi project (download files > tar.gz > view hashes)
  • test conda recipe with bioconda-utils build --git-range master vs bioconda-recipes

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

anospp_analysis-0.1.3.tar.gz (10.4 kB view hashes)

Uploaded Source

Built Distribution

anospp_analysis-0.1.3-py3-none-any.whl (11.4 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page