Skip to main content

diploSHIC

Project description

diploS/HIC

This repo contains the implementation for diploS/HIC as described in Kern and Schrider (2018; https://doi.org/10.1534/g3.118.200262), along with its associated support scripts. diploS/HIC uses a deep convolutional neural network to identify hard and soft selective sweep in population genomic data.

The workflow for analysis using diploS/HIC consists of four basic parts. 1) Generation of a training set for diploS/HIC using simulation. 2) diploS/HIC training and performance evaluation. 3) Calculation of dipoS/HIC feature vectors from genomic data. 4) prediction on empirical data using the trained network. The software provided here can handle the last three parts; population genetic simulations must be performed using separate software such as discoal (https://github.com/kern-lab/discoal)

Installation

diploS/HIC has a number of dependencies that should be straightforward to install using python package managers such as conda or pip. The complete list of dependencies looks like this:

  • numpy
  • scipy
  • pandas
  • scikit-allel
  • scikit-learn
  • tensorflow
  • keras

Install on linux

I'm going to focus on the steps involved to install on a linux machine using Anaconda as our python source / main package manager. Assuming you have conda installed, create a new conda env

$ conda create -n diploshic python=3.9 --yes

Note that because I'm using the Anaconda version of python, pip will only install this in the anaconda directory which is a good thing. Now we are ready to install diploS/HIC itself

$ git clone https://github.com/kern-lab/diploSHIC.git
$ cd diploSHIC 
$ pip install .

This should automatically install all the dependencies including tensorflow. You will need to determine if you want to use a CPU-only implementation (probably) or a GPU implementation of tensorflow. See https://www.tensorflow.org/install/install_linux for install instructions.

Usage

The main program that you will interface with is diploSHIC. This script is installed by default in the conda environment bin directory. This script has four run modes that allow the user to perform each of the main steps in the supervised machine learning process. We will briefly lay out the modes of use and then will provide a complete example of how to use the program for fun and profit.

diploSHIC uses the argparse module in python to try to give the user a complete, command line based help menu. We can see the top level of this help by typing

$ diploSHIC -h
usage: diploSHIC [-h] {train,predict,fvecSim,fvecVcf} ...

calculate feature vectors, train, or predict with diploSHIC

possible modes (enter \'diploSHIC modeName -h\' for modeName\'s help message:
  {fvecSim,makeTrainingSets,train,fvecVcf,predict}
                        sub-command help
    fvecSim             Generate feature vectors from simulated data
    makeTrainingSets    Combine feature vectors from muliple fvecSim runs into
                        5 balanced training sets
    train               train and test a shic CNN
    fvecVcf             Generate feature vectors from data in a VCF file
    predict             perform prediction using an already-trained SHIC CNN

optional arguments:
  -h, --help            show this help message and exit

before running diploSHIC: simulating training/testing data

All flavors of S/HIC require simulated data for training (and ideally, testing). Users can select whatever simulator they prefer and parameterize them however they wish. We have included an example script in this respository (generateSimLaunchScript.py) which demonstrates how a training set can be simulated with discoal (available at https://github.com/kern-lab/discoal).

feature vector generation modes

The first task in our pipeline is generating feature vectors from simulation data (or empirical data) to use with the CNN that we will train and then use for prediction. The diploSHIC script eases this process with two run modes

fvecSim mode

The fvecSim run mode is used for turning ms-style output into feature vectors compatible with diploSHIC. The help message from this mode looks like this

$ diploSHIC fvecSim -h
usage: diploSHIC fvecSim [-h] [--totalPhysLen TOTALPHYSLEN]
                            [--numSubWins NUMSUBWINS]
                            [--maskFileName MASKFILENAME]
                            [--chrArmsForMasking CHRARMSFORMASKING]
                            [--unmaskedFracCutoff UNMASKEDFRACCUTOFF]
                            [--outStatsDir OUTSTATSDIR]
                            [--ancFileName ANCFILENAME] [--pMisPol PMISPOL]
                            shicMode msOutFile fvecFileName

required arguments:
  shicMode              specifies whether to use original haploid SHIC (use
                        'haploid') or diploSHIC ('diploid')
  msOutFile             path to simulation output file (must be same format
                        used by Hudson's ms)
  fvecFileName          path to file where feature vectors will be written

optional arguments:
  -h, --help            show this help message and exit
   --totalPhysLen TOTALPHYSLEN
                        Length of simulated chromosome for converting infinite
                        sites ms output to finite sites (default=1100000)
  --numSubWins NUMSUBWINS
                        The number of subwindows that our chromosome will be
                        divided into (default=11)
  --maskFileName MASKFILENAME
                        Path to a fasta-formatted file that contains masking
                        information (marked by 'N'). If specified, simulations
                        will be masked in a manner mirroring windows drawn
                        from this file.
  --chrArmsForMasking CHRARMSFORMASKING
                        A comma-separated list (no spaces) of chromosome arms
                        from which we want to draw masking information (or
                        'all' if we want to use all arms. Ignored if
                        maskFileName is not specified.
  --unmaskedFracCutoff UNMASKEDFRACCUTOFF
                        Minimum fraction of unmasked sites, if masking
                        simulated data
  --outStatsDir OUTSTATSDIR
                        Path to a directory where values of each statistic in
                        each subwindow are recorded for each rep
  --ancFileName ANCFILENAME
                        Path to a fasta-formatted file that contains inferred
                        ancestral states ('N' if unknown). This is used for
                        masking, as sites that cannot be polarized are masked,
                        and we mimic this in the simulted data. Ignored in
                        diploid mode which currently does not use ancestral
                        state information
  --pMisPol PMISPOL     The fraction of sites that will be intentionally
                        polarized to better approximate real data

This mode takes three arguments and then offers many options. The arguments are the "shicMode", i.e. whether to calculate the haploid or diploid summary statistics, the name of the input file, and the name of the output file. The various options allow one to account for missing data (via masking), unfolding the site frequency spectrum via the ancestral states file (haploid only), and a mis-polarization rate of that unfolded site frequency spectrum. Please see the example usage below for a fleshed out example of how to use these features.

fvecVcf mode

The fvecVcf mode is used for calculating feature vectors from data that is stored as a VCF file. The help message from this mode is as follows

$ diploSHIC fvecVcf -h
usage: diploSHIC fvecVcf [-h] [--targetPop TARGETPOP]
                            [--sampleToPopFileName SAMPLETOPOPFILENAME]
                            [--winSize WINSIZE] [--numSubWins NUMSUBWINS]
                            [--maskFileName MASKFILENAME]
                            [--unmaskedFracCutoff UNMASKEDFRACCUTOFF]
                            [--ancFileName ANCFILENAME]
                            [--statFileName STATFILENAME]
                            [--segmentStart SEGMENTSTART]
                            [--segmentEnd SEGMENTEND]
                            shicMode chrArmVcfFile chrArm chrLen

required arguments:
  shicMode              specifies whether to use original haploid SHIC (use
                        'haploid') or diploSHIC ('diploid')
  chrArmVcfFile         VCF format file containing data for our chromosome arm
                        (other arms will be ignored)
  chrArm                Exact name of the chromosome arm for which feature
                        vectors will be calculated
  chrLen                Length of the chromosome arm
  fvecFileName          path to file where feature vectors will be written

optional arguments:
  -h, --help            show this help message and exit
  --targetPop TARGETPOP
                        Population ID of samples we wish to include
  --sampleToPopFileName SAMPLETOPOPFILENAME
                        Path to tab delimited file with population
                        assignments; format: SampleID popID
  --winSize WINSIZE     Length of the large window (default=1100000)
  --numSubWins NUMSUBWINS
                        Number of sub-windows within each large window
                        (default=11)
  --maskFileName MASKFILENAME
                        Path to a fasta-formatted file that contains masking
                        information (marked by 'N'); must have an entry with
                        title matching chrArm
  --unmaskedFracCutoff UNMASKEDFRACCUTOFF
                        Fraction of unmasked sites required to retain a
                        subwindow
  --ancFileName ANCFILENAME
                        Path to a fasta-formatted file that contains inferred
                        ancestral states ('N' if unknown); must have an entry
                        with title matching chrArm. Ignored for diploid mode
                        which currently does not use ancestral state
                        information.
  --statFileName STATFILENAME
                        Path to a file where statistics will be written for
                        each subwindow that is not filtered out
  --segmentStart SEGMENTSTART
                        Left boundary of region in which feature vectors are
                        calculated (whole arm if omitted)
  --segmentEnd SEGMENTEND
                        Right boundary of region in which feature vectors are
                        calculated (whole arm if omitted)

This mode takes five arguments and again has many options. The required arguments are the "shicMode", i.e. whether to calculate the haploid or diploid summary statistics, the name of the input file, which chromosome to arm to calculate statistics for, the length of that chromosome, and the name of the output file.

training the CNN and prediction

Once we have feature vector files ready to go we can train and test our CNN and then finally do prediction on empirical data.

formatting our training set

Before entering train mode we need to consolidate our training set into 5 files, one for each class. This is done using the makeTrainingSets mode whose help message is as follows:

$ diploSHIC makeTrainingSets -h
usage: diploSHIC makeTrainingSets [-h]
                                     neutTrainingFileName
                                     softTrainingFilePrefix
                                     hardTrainingFilePrefix
                                     sweepTrainingWindows
                                     linkedTrainingWindows outDir

required arguments:
  neutTrainingFileName  Path to our neutral feature vectors
  softTrainingFilePrefix
                        Prefix (including higher-level path) of files
                        containing soft training examples; files must end with
                        '_$i.$ext' where $i is the subwindow index of the
                        sweep and $ext is any extension.
  hardTrainingFilePrefix
                        Prefix (including higher-level path) of files
                        containing hard training examples; files must end with
                        '_$i.$ext' where $i is the subwindow index of the
                        sweep and $ext is any extension.
  sweepTrainingWindows  comma-separated list of windows to classify as sweeps
                        (usually just '5' but without the quotes)
  linkedTrainingWindows
                        list of windows to treat as linked to sweeps (usually
                        '0,1,2,3,4,6,7,8,9,10' but without the quotes)
  outDir                path to directory where the training sets will be
                        written

optional arguments:
  -h, --help            show this help message and exit

train mode

Here is the help message for the train mode of diploSHIC

$ diploSHIC train -h
usage: diploSHIC train [-h] [--epochs EPOCHS] [--numSubWins NUMSUBWINS]
                          trainDir testDir outputModel

required arguments:
  trainDir              path to training set files
  testDir               path to test set files, can be same as trainDir
  outputModel           file name for output model, will create two files one
                        with structure one with weights

optional arguments:
  -h, --help            show this help message and exit
  --epochs EPOCHS       max epochs for training CNN (default = 100)
  --numSubWins NUMSUBWINS
                        number of subwindows that our chromosome is divided
                        into (default = 11)

As you will see in a moment train mode is used for training the deep learning classifier. Its required arguments are trainDir (the directory where the training feature vectors are kept), testDir (the directory where the testing feature vectors are kept), and outputModel the file name for the trained network. One note -- diploSHIC expects five files named hard.fvec, soft.fvec, neut.fvec, linkedSoft.fvec, and linkedHard.fvec in the training and testing directories. The training and testing directory can be the same directory in which case 20% of the training examples are held out for use in testing and validation.

train mode has two options, the number of subwindows used for the feature vectors and the number of training epochs for the network.

predict mode

Once a classifier has been trained, one uses the predict mode of diploSHIC to classify empirical data. Here is the help statement

$ diploSHIC predict -h
usage: diploSHIC predict [-h] [--numSubWins NUMSUBWINS]
                            modelStructure modelWeights predictFile
                            predictFileOutput

required arguments:
  modelStructure        path to CNN structure .json file
  modelWeights          path to CNN weights .h5 file
  predictFile           input file to predict
  predictFileOutput     output file name

optional arguments:
  -h, --help            show this help message and exit
  --numSubWins NUMSUBWINS
                        number of subwindows that our chromosome is divided
                        into (default = 11)

The predict mode takes as input the two model files output by the train mode, an input file of empirical feature vectors, and a file name for the prediction output.

a quick example of the train/predict cycle

We have supplied in the repo some example data that can give you a quick run through the train/predict cycle (we will also shortly provide a soup-to-nuts example that starts by calculating feature vectors from simulations and ends with prediction of genomic data). Let's quickly give that code a spin. The directories testing/ and training/ each contain appropriately formatted diploid feature vectors that are ready to be fed into diploSHIC. First we will train the diploSHIC CNN, but we will restrict the number of training epochs to 10 to keep things relatively brief (this runs in less than 5 minutes on our server).

$ diploSHIC train training/ testing/ fooModel --epochs 10

as it runs a bunch of information monitoring the training of the network will apear. We are tracking the loss and accuracy in the validation set. When optimization is complete our trained network will be contained in two files, fooModel.json and fooModel.weights.hdf5. The last bit of output from diploSHIC gives us information about the loss and accuracy on the held out test data. From the above run my looks like this:

evaluation on test set:
diploSHIC loss: 0.404791
diploSHIC accuracy: 0.846800

Not bad. In practice I would set the --epochs value much higher than 10- the default setting of 100 should suffice in most cases. Now that we have a trained model we can make predictions on some empirical data. In the repo there is a file called testEmpirical.fvec that we will use as input

$ diploSHIC predict fooModel.json fooModel.weights.hdf5 testEmpirical.fvec testEmpirical.preds

the output predictions will be saved in testEmpirical.preds and should be straightforward to interpret.

A complete test case

In the interest of showing the user the whole enchilada when it comes to the workflow, I've provided the user with a more detailed example on the wiki of this repo. That example can be found here: https://github.com/kern-lab/diploSHIC/wiki/A-soup-to-nuts-example

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

diploSHIC-0.333333.tar.gz (13.9 MB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

diploSHIC-0.333333-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (73.3 kB view details)

Uploaded PyPymanylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

diploSHIC-0.333333-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (74.1 kB view details)

Uploaded PyPymanylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

diploSHIC-0.333333-cp310-cp310-musllinux_1_1_x86_64.whl (120.0 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ x86-64

diploSHIC-0.333333-cp310-cp310-musllinux_1_1_i686.whl (117.1 kB view details)

Uploaded CPython 3.10musllinux: musl 1.1+ i686

diploSHIC-0.333333-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl (973.9 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ x86-64

diploSHIC-0.333333-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (121.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

diploSHIC-0.333333-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (118.0 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

diploSHIC-0.333333-cp39-cp39-musllinux_1_1_x86_64.whl (119.5 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ x86-64

diploSHIC-0.333333-cp39-cp39-musllinux_1_1_i686.whl (116.6 kB view details)

Uploaded CPython 3.9musllinux: musl 1.1+ i686

diploSHIC-0.333333-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (121.3 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

diploSHIC-0.333333-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (117.5 kB view details)

Uploaded CPython 3.9manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

diploSHIC-0.333333-cp38-cp38-musllinux_1_1_x86_64.whl (121.4 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ x86-64

diploSHIC-0.333333-cp38-cp38-musllinux_1_1_i686.whl (118.8 kB view details)

Uploaded CPython 3.8musllinux: musl 1.1+ i686

diploSHIC-0.333333-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (123.2 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

diploSHIC-0.333333-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (119.7 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_x86_64.whl (120.0 kB view details)

Uploaded CPython 3.7mmusllinux: musl 1.1+ x86-64

diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_i686.whl (117.4 kB view details)

Uploaded CPython 3.7mmusllinux: musl 1.1+ i686

diploSHIC-0.333333-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (121.7 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

diploSHIC-0.333333-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (117.8 kB view details)

Uploaded CPython 3.7mmanylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_x86_64.whl (117.2 kB view details)

Uploaded CPython 3.6mmusllinux: musl 1.1+ x86-64

diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_i686.whl (114.0 kB view details)

Uploaded CPython 3.6mmusllinux: musl 1.1+ i686

diploSHIC-0.333333-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (118.8 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ x86-64manylinux: glibc 2.5+ x86-64

diploSHIC-0.333333-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl (114.4 kB view details)

Uploaded CPython 3.6mmanylinux: glibc 2.12+ i686manylinux: glibc 2.5+ i686

File details

Details for the file diploSHIC-0.333333.tar.gz.

File metadata

  • Download URL: diploSHIC-0.333333.tar.gz
  • Upload date:
  • Size: 13.9 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333.tar.gz
Algorithm Hash digest
SHA256 fd792791f638a3c4f3f182ad95d473297432cbdf9239ede940d7f7990084d499
MD5 a053cfe7f8269f4e73e6f26c3a8b9187
BLAKE2b-256 8e79bc66897efa74f1283c4830fe5531de3c5cd3cf92457ee7b67ce3bf1325f5

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-pp37-pypy37_pp73-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b9dfdea9fd60ae23a3b6c4f100b508059df29faca610f42deeeb3fbed34b472d
MD5 260216030ba661b755a0401e6ce8b312
BLAKE2b-256 2c00fd70e2ae945f6bbdd3611e520cda448edbd7bcce6e7fb16344926a9bcd7c

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-pp37-pypy37_pp73-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 210f781fde15771ab56577ecda835f8a6e0504751936d3de2292e475be42b560
MD5 8b2ce189cc5d80033864669a81d371de
BLAKE2b-256 0ce9f3c6ee5bc91624a7dff45477d9b3623cb8505d4d968cddcfb878f68c05e2

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp310-cp310-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp310-cp310-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 120.0 kB
  • Tags: CPython 3.10, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp310-cp310-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 6145895f7f5e35b96eba62bc8272f3bcb1853894da72ba7fe5e6135b6d5afffb
MD5 ac003f213c5f0bf2aae82cb02a6f8ce9
BLAKE2b-256 4fdec257892410d2cf05830ab52a583c0881bffa00f9ec4a5d092adf177348e9

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp310-cp310-musllinux_1_1_i686.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp310-cp310-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 117.1 kB
  • Tags: CPython 3.10, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp310-cp310-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 8fceab56def1dc55e434d1864c235cf81b76eab7d2f301af86a09df9febee72d
MD5 347830e83480cf069dd5f0167daaf22b
BLAKE2b-256 2249714f6bb8b2649a57e9c90671113ae16afd5053f11ba4fef1ec1774202a11

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 01ade5333b3bbc5cf2c783163c0aea904050c4b1cba916b28540085c36f72910
MD5 5b4860bf90628c05e1a80090a6819e45
BLAKE2b-256 009cd2e25202b955aac1aaac20efed3e63b052610e6ec0a13996405a0e03c67b

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 7a2b9a89b1ec28890c365ae3a07c3c1dfb3b210dffb38b701525ae197eab8f11
MD5 a143f64bfdcc2e0545b4b84a797f3b36
BLAKE2b-256 3fe6bad94b60dee10f010ec5d2482cd0cebdc36ce0cbdf7c2bde16eb552c34a5

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 f19ff4e193616b94a3377d697db7324130bc7ca4bff8211571b2e5afeda320d3
MD5 d6c4ee1025e37fb600216732f3c6c91e
BLAKE2b-256 4d462fbbe2d5986a5a252f3ac3ab9514762c6bc72a5cc043ed9b55f3137efccb

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp39-cp39-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp39-cp39-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 119.5 kB
  • Tags: CPython 3.9, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp39-cp39-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 971d9ea8d7b27b85a109e9d05ef51dac185ad96545387e6df9e04c3ed014ac39
MD5 65966ef710e3dca554c6afd1067ec6bc
BLAKE2b-256 1fe6a7ce12139a20b5add882aa95b53a37713f7ef7a2a9b6bd2139a11f4c57eb

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp39-cp39-musllinux_1_1_i686.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp39-cp39-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 116.6 kB
  • Tags: CPython 3.9, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp39-cp39-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 6a0fe2533e7204c9fb4e2b63b9ae6c3f6c763c187e86e5bccb6afa7dbe04b2d6
MD5 23ba149effc5ca8b529ce8ab3855f845
BLAKE2b-256 502d91f6211d84bbd43ffe389d29bd1d92233a57580b4d6aaa9a457a30393e7c

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 881297353e17d4f3daaf5df10413cc5300e0fa4b1fc94c79ba7593a810b59c21
MD5 d5c34aaa9654fe26c81d43a404cbfaf5
BLAKE2b-256 48bd6ed9e4cc32178654817ca4fcb19e0808907bc5d424e4f9c985174e5ddc42

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 3271e4bfb11e11dcd3b241aa8b044f980e8b2c974c42f0a8464f92f8737e60dd
MD5 95609fcfecda6bbdff77c267c69f6835
BLAKE2b-256 89649c469c81953743e785914f4605feb70686ba4bf75f1f36f3be3ffa8cd666

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp38-cp38-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp38-cp38-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 121.4 kB
  • Tags: CPython 3.8, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp38-cp38-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 172072c6bc57007fcd8f3be82cbec3f3e78c2cf2b8fb615064d8bdd961db6651
MD5 8e3a0385db200ec2deb2b91b5350f55a
BLAKE2b-256 1f13f67bfe37155e29847297863b33237c7fa89186f8a6bbc67ec9f10885518d

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp38-cp38-musllinux_1_1_i686.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp38-cp38-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 118.8 kB
  • Tags: CPython 3.8, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp38-cp38-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 e4ce9240f998bdcdff13225f22639d234a7a88eec45bb5c7209d5d2d3af43856
MD5 810d78eccefc56af07275e27f494ab4e
BLAKE2b-256 a1f491e24beb41be5627e12a176c1b287caeb5d9429db0628071b0a2ff3fb220

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 bcdf9d310d984691ef694528de3fb9a5cb411c85a7349f06cc06d7878886db26
MD5 5a0ad615db258dc1219f50e3e11a0ed8
BLAKE2b-256 73424d3b4eb60f67061115b19bb3373d6112c0dade3db6de3787bacf94576671

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 be2ca5a3dcb288952782e2f5b57f38ea0c8216c73427ab09762cccf5ddc856ad
MD5 d074f2f674e9e759a5c83f5ae366df72
BLAKE2b-256 8b425827ed208dd4a5bb376b8d8c2e6df3d7da4acb543893aa69c6a5cc2375fa

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 120.0 kB
  • Tags: CPython 3.7m, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 d8957875b1d9addb4f5e6699190d5a6f5d4e0fdf03287aa2e044d760d40652c7
MD5 977fc97649f4c9d0c53e57fbd5712154
BLAKE2b-256 b1a35b06a0194db6925c5facd450b6ead8e72a7ede6741b486f1268fa58abcc6

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_i686.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 117.4 kB
  • Tags: CPython 3.7m, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp37-cp37m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 c566e2f1e1b2e4a7c8f4a77a85ca358bbd5a6e54c222d98aa40aa7b7d5b3128f
MD5 91d91be2b944569cabe0c84b77fa023f
BLAKE2b-256 e363399c9dcabbeb1d2d3114514bb3f71ea02c80602dc873bbc0a577aff30307

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 bf7848c464c1999b3e94d8f726e76877ffd89d81a796940f6bd843cd9d8bd82c
MD5 d20ee4045042338c77e56edb6ec115c8
BLAKE2b-256 b0bc5b5928c3ce52b1350ef4188ceb58ac8086b275b7757a2490cf56dda59574

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp37-cp37m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 97a4a1615e069c7490e9df887c36dca94f409a8c388639315157142d94cf68d1
MD5 a7ebd070b24a6aa6c4c51231ba9fdfc6
BLAKE2b-256 760cfe78832d33a86ed083e4054d8324174faa1856abce56f2d17199546c14a2

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_x86_64.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_x86_64.whl
  • Upload date:
  • Size: 117.2 kB
  • Tags: CPython 3.6m, musllinux: musl 1.1+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_x86_64.whl
Algorithm Hash digest
SHA256 8fe8ef8c9ee09f4a2e48c7e607d0e5eb8d56dbe7a4615d5e14d89b333abbdbc6
MD5 dc46f7493849fd236114b657ec2fde68
BLAKE2b-256 9bb2d709fcbc6de2496ed3adc2c9f4b89124f410320eddda051cec9fbc3d5fad

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_i686.whl.

File metadata

  • Download URL: diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_i686.whl
  • Upload date:
  • Size: 114.0 kB
  • Tags: CPython 3.6m, musllinux: musl 1.1+ i686
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.7.9

File hashes

Hashes for diploSHIC-0.333333-cp36-cp36m-musllinux_1_1_i686.whl
Algorithm Hash digest
SHA256 d4eb379ccc55c64e0d7ed47173e9c9445e716e6599c52bc625bb6f7d38c92344
MD5 4fea1724275b3c4357fb9e4c6cad0b34
BLAKE2b-256 d03cd5fbade30fcd59017060d0283eaf724110bea2509f1b82a417a3d05684fd

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 f88b1a432dff3f528912b6acc8122a4396bd77338c82112de7bca26daf1d25c1
MD5 166dd12900bcfbf1ebb3d77ee91c79c4
BLAKE2b-256 ad4d17b0e2b2816ea5dad9a9ecb9b8783659c83be49bbcc173abc9f8ead305f2

See more details on using hashes here.

File details

Details for the file diploSHIC-0.333333-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl.

File metadata

File hashes

Hashes for diploSHIC-0.333333-cp36-cp36m-manylinux_2_5_i686.manylinux1_i686.manylinux_2_12_i686.manylinux2010_i686.whl
Algorithm Hash digest
SHA256 490e8b87fafbca4706b0c81c0a1b968ea9385614005c7fb9af850dfd236e76ab
MD5 b6a421d2eba0e71ffa14b1e0a697354c
BLAKE2b-256 ed905a5f381e5b65d6a6225d67205b1692f1adc9c352ca863736288860193854

See more details on using hashes here.

Supported by

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