Package: massgenotyping
Python package for microsatellite genotyping from highly multiplexed amplicon sequencing dataFeaturesSemi-automatic genotyping optimized for amplicon sequencing data of microsatellite lociVisual genotyping with interactive plotsFast SSR search in sequencesAutomatic grouping and naming of alleles based on polymorphisms in both SSR and non-SSR regionsSupport for multi-core processingRequirementsPython 3.8 or higherNGmergeMAFFTBLASTn (included inBLAST+command line applications provided by NCBI)Optional:ripgrepInstallationInstall from PyPIpipinstallmassgenotypingInstall the latest version from a Git repositorypipinstallgit+https://github.com/kohyamat/massgenotypingUsagemgt[-h]SUBCOMMAND[OPTIONS]Subcommand list:demultiplex: demultiplex raw amplicon sequences based on primer sequencesmerge-pairs: merge paired-end readsdenoise: reduce any noise that may have been generated during sequencing and PCRfilter: filtering for erroneous sequence variants and screening for putative allelesallele-check: check allele candidates and create an allele databaseallele-call: assign alleles to raw amplicon sequencesshow-alignment: show a sequence alingmentThe details of the options for each subcommand can be checked bymgt SUBCOMMAND -h.Tutorials with example dataHere’s a step-by-step tutorial using theexample data.1. Demultiplex raw amplicon sequences based on primer sequencesAs a first step, the sequence data is split based on the primer sequence.
The input can be one or two sequence files in the FASTQ format, or a directory containing multiple sequence files.
Primer sequences can be read from CSV or FASTA files.
Please check the example data for the format of the input data.mgtdemultiplexexamples/sequence_data-g"*_R[12]_*"-mexamples/marker_data.csvThe result files are written in subdirectories within the output directory (./projectby default) for each marker.2. Merge paired-end reads and trim primer sequecnesFor the paired-end sequencing data, the respective sequence pairs are merged using NGmerge program.
The following command removes the the primer sequences after merging sequence pairs.mgtmerge-pairs./project-mexamples/marker_data.csv--trim-primerFor single-end data, this step can be skipped. The removal of the primer sequence can also be performed in the step 1.3. Reduce noise (optional but recommended)This step corrects any noise (very low-frequency point mutations) that may have been generated during sequencing or PCR.
This step is not necessarily required, but it will make the following step easier.mgtdenoise./project/*/*_merged.fastq.gz4. Filter out erroneous sequence variantsIn this step, the sequence of putative alleles is extracted for each marker in each sample,
while removing any erroneous sequence variants, such as ‘stutter’ sequences.
After some rough filtering, an interactive plot allows you to choose which sequence variants to keep.
You can skip this visual-checking procedure with the--force-no-visual-checkoption.mgtfilter./project-mexamples/marker_data.csv5. Check a multiple sequence alignment and make an allele databaseThe database is created after checking the alignment of the putative allele sequences.
If necessary, you can further filter out the erroneous sequence variants.mgtallele-check./project6. Assign alleles to raw amplicon sequencesFinally, the following command perform a BLASTn search against the database created for each marker and assign alleles to the raw sequence data.
The genotype tables are created within the output directory.mgtallele-call./project-mexamples/marker_data.csvScreenshotsFigure 1.Checking the multiple sequence alignment across the samples (STEP 5).Figure 2.Visual genotyping (STEP 6).Contributing to massgenotypingContributions of any kind are welcome!LicenseMIT