SMCPP pipeline
A python pipeline for implementing smcpp to decipher demographic history of populations of interest
All the functions assume that the user has generated population population-specific chromosome file and stored it in a directory popname/ present in the current working directory. all the chromosome files should be bgzipped and tabix indexed and should be in format chr{i}.vcf.gz.
If the user has a single genotype file, then user can make use of bcftools to generate population-specific bgzipped and tabix index VCFs.
The original package can be found here https://github.com/popgenmethods/smcpp
The original article can be found here
Terhorst, J., Kamm, J. & Song, Y. Robust and scalable inference of population history from hundreds of unphased whole genomes. Nat Genet 49, 303–309 (2017). https://doi.org/10.1038/ng.3748
The package can be installed through Pypi (https://pypi.org/project/smcpp-pipeline/)
A tutorial has been provided in a blog (https://medium.com/@devashishtripathi697/population-history-inference-using-whole-genome-sequence-data-9cf99821cd1f) using the simulated data hosted at figshare (https://figshare.com/articles/dataset/msprime_single_population_simulated_dataset/25234849)
pip install smcpp-pipeline
from smcpp_pipeline.smcpp_pipeline import vcf2smc,estimate,plot
1) Function to convert vcf file to smc format
def vcf2smc(popfile,chromosome_info,gaps_bed=None,num_workers=None):
2) Function to estimate the demographic history of a single population
def estimate(popfile,mu = 1.25e-8,spline = "piecewise",start_time = 100, end_time=100000,knots = 8):
3) Function to generate plots from the model.json file obtained using estimate function
def plot(popfile,time_start=100,time_end=15000):
popfile should be a tab separated file containing two columns
sample.id population
i1 pop1
i2 pop1
i3 pop2
Metadata
Release files for smcpp-pipeline 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| smcpp_pipeline-0.4.0.tar.gz | 3.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| smcpp_pipeline-0.4.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.3 kB
Release files / smcpp_pipeline-0.4.0.tar.gz
| Download URL | smcpp_pipeline-0.4.0.tar.gz |
|---|---|
| Size | 3.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
cc3d59cbfca4d1df3637901d53e88f48e3e384db75f79ec0434c37b01d43139e
|
|
BLAKE2b-256 checksum How to use checksums |
db61eaa11512ae054903928031676e3dce0e644c90547b39b14cf558e4d5b72f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.18
|
Release files / smcpp_pipeline-0.4.0-py3-none-any.whl
| Download URL | smcpp_pipeline-0.4.0-py3-none-any.whl |
|---|---|
| Size | 4.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bd21ff286864f0ead155baa343c878bc12bf9ef143a3ae952e532fa74ff8d996
|
|
BLAKE2b-256 checksum How to use checksums |
cd6ac93da393e32992c06a1cb1289444a38454657b5f81c2efaad188f91b530b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.0.0 CPython/3.9.18
|