https://github.com/andrewjpage/snp-sites
Science Score: 13.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
○codemeta.json file
-
○.zenodo.json file
-
✓DOI references
Found 3 DOI reference(s) in README -
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.2%) to scientific vocabulary
Repository
Basic Info
Statistics
- Stars: 3
- Watchers: 2
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
SNP-sites
Rapidly decreasing genome sequencing costs have led to a proportionate increase in the number of samples used in prokaryotic population studies. Extracting single nucleotide polymorphisms (SNPs) from a large whole genome alignment is now a routine task, but existing tools have failed to scale efficiently with the increased size of studies. These tools are slow, memory inefficient and are installed through non-standard procedures. We present SNP-sites which can rapidly extract SNPs from a multi-FASTA alignment using modest resources and can output results in multiple formats for downstream analysis. SNPs can be extracted from a 8.3 GB alignment file (1,842 taxa, 22,618 sites) in 267 seconds using 59 MB of RAM and 1 CPU core, making it feasible to run on modest computers. It is easy to install through the Debian and Homebrew package managers, and has been successfully tested on more than 20 operating systems. SNP-sites is implemented in C and is available under the open source license GNU GPL version 3.
The software can be cited as:
Usage: snp-sites [-mvph] [-o output_filename] <file>
This program finds snp sites from a multi fasta alignment file.
-r output internal pseudo reference sequence
-m output a multi fasta alignment file (default)
-v output a VCF file
-p output a phylip file
-o specify an output filename
-h this help message
-V print version and exit
<file> input alignment file which can optionally be gzipped
This application takes in a multi fasta alignment, finds all the SNP sites, then outputs the SNP sites in the following formats:
- a multi fasta alignment,
- VCF,
- relaxed phylip format.
Example input
For the given input file: ```
sample1 AGACACAGTCAC sample1 AGACAC----AC sample1 AAACGCATTCAN
the output is:sample1 GAG sample1 GA- sample1 AGT ```
Example usage
snp-sites my_alignment.aln
snp-sites my_gzipped_alignment.aln.gz
Multi Fasta Alignment
Similar to the input file but just containing the SNP sites.
VCF
This contains the position of each SNP in the reference sequence, and the occurrence in each other sample. Can be loaded into Artemis for visualisation.
Relaxed Phylip format
All the SNP sites in a format for RAxML and other tree building applications.
Installation
There are a few ways to install snp-sites. The simpliest way is using apt (Debian/Ubuntu) or Conda.
- Linux - Ubuntu/Debian
- OSX/Linux - using Bioconda
- OSX/Linux - from source
- OSX/Linux - from a release tarball
Linux - Ubuntu/Debian
If you have a recent version of Ubuntu or Debian then you can install it using apt.
apt-get install snp-sites
OSX/Linux - using Bioconda
Install Conda and install the bioconda channels.
conda config --add channels conda-forge
conda config --add channels defaults
conda config --add channels r
conda config --add channels bioconda
conda install snp-sites
OSX/Linux - from source
This is a difficult method and is only suitable for someone with advanced unix skills. No support is provided with this method, since you have advanced unix skills. Please consider using Conda instead. First install a standard development environment (e.g. gcc, automake, autoconf, libtool). Download the software from GitHub.
autoreconf -i -f
./configure
make
sudo make install
OSX/Linux - from a release tarball
This is a difficult method and is only suitable for someone with advanced unix skills. No support is provided with this method, since you have advanced unix skills. Please consider using Conda instead. First install a standard development environment (e.g. gcc, automake, autoconf, libtool).
tar xzvf snp-sites-x.y.z.tar.gz
cd snp-sites-x.y.z
./configure
make
sudo make install
All platforms - Docker
Bioconda produce a Docker container so you can use the software out of the box. Install Docker and then pull the container from Bioconda https://quay.io/repository/biocontainers/snp-sites
Owner
- Name: andrewjpage
- Login: andrewjpage
- Kind: user
- Location: Cambridge, UK
- Company: Theiagen Genomics
- Repositories: 111
- Profile: https://github.com/andrewjpage
Director of Technical Innovation
