{ "info": { "author": "Eric Torstenson", "author_email": "eric.s.torstenson@vanderbilt.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: GNU General Public License v3 or later (GPLv3+)", "Programming Language :: Python :: 2.7", "Topic :: Scientific/Engineering :: Bio-Informatics", "Topic :: Software Development :: Libraries", "Topic :: Utilities" ], "description": "MVTest - GWAS Analysis\n**********************\n\n* Installation\n\n * Install with PIP\n\n * Manual Installation\n\n * System Requirements\n\n * Running Unit Tests\n\n * Virtual Env\n\n * Miniconda\n\n* What is MVtest?\n\n * Documentation\n\n * Command-Line Arguments\n\n* mvmany Helper script\n\n * The Default Template\n\n * Command Line Arguments\n\n* Development Notes\n\n * MVtest authors\n\n * Change Log\n\n* Changelog\n\nInstallation\n************\n\nMVtest requires python 2.7.x as well as the following libraries:\n\n* NumPy (version 1.7.2 or later) www.numpy.org\n\n* SciPY (version 0.13.2 or later) www.scipy.org\n\nMVTest's installation will attempt to install these required\ncomponents for you, however, it requires that you have write\npermission to the installation directory. If you are using a shared\nsystem and lack the necessary privileges to install libraries and\nsoftware yourself, you should please see one of the sections,\nMiniconda or virtual-env below for instructions on different options\nfor setting up your own python environement which will exist entirely\nunder your own control.\n\nInstallation can be done in two ways:\n\n\nInstall with PIP\n================\n\nTo install using python's package manager, pip, simply use the\nfollowing command:\n\n$ *pip install MVtest*\n\nIf you have proper permission to install packages, this will attempt\nto download and install all dependencies along with MVtest itself.\n\n\nManual Installation\n===================\n\nFor users who do not use pip or wish to run the bundled tests as well\nas have a local copy of the manuals, manual installation is almost as\neasy.\n\nFor users with Git installed, you can simply clone the sources using\nthe following command:\n\n$ *git clone https://github.com/edwards-lab/MVtest*\n\nOr you may visit the website and download the tarball directly from\ngithub: https://github.com/edwards-lab/MVtest\n\nOnce you have downloaded the software, simply extract the contents and\nrun the following command to install it:\n\n$ *python setup.py install*\n\nIf no errors are reported, it should be installed and ready to use.\n\n**Regarding PYTHON 3** I began the process of updating the code to\nwork with both python versions 2 and 3, however, there are some real\nissues with some library support of version 3 that is discouraging.\nSo, until those have been resolved, I have no plans to invest further\ntime toward support for python 3.\n\n\nSystem Requirements\n===================\n\nAside from the library dependencies, MVTest's requirements depend\nlargely on the number of SNPs and individuals being analyzed as well\nas the data format being used. In general, GWAS sized datasets will\nrequire several gigabytes of memory when using the traditional\npedigree format, however, even 10s of thousands of subjects can be\nanalyzed with less than 1 gigabyte of RAM when the data is formatted\nas transposed pedigree or PLINK's default bed format.\n\nOtherwise, it is recommended that the system be run on a unix-like\nsystem such as Linux or OS X, but it should work under windows as well\n(we can't offer support for running MVTest under windows).\n\n\nRunning Unit Tests\n==================\n\nMVTest comes with a unit test suite which can be run prior to\ninstallation. To run the tests, simply run the following command from\nwithin the root directory of the extracted archive's contents:\n\n$ *python setup.py test*\n\nIf no errors are reported, then mvtest should run correctly on your\nsystem.\n\n\nVirtual Env\n===========\n\nVirtual ENV is a powerful too for python programmers and end users\nalike as it allows for users to deploy different versions of python\napplications without the need for root access to the machine.\n\nBecause MVTest requires version 2.7, you'll need to ensure that your\nmachine's python version is in compliance. Virtual Env basically uses\nthe the system version of python, but creates a user owned environment\nwrapper allowing users to install libraries easily without\nadministrative rights to the machine.\n\nFor a helpful introduction to VirtualEnv, please have a look at the\ntutorial: http://www.simononsoftware.com/virtualenv-tutorial/\n\n\nMiniconda\n=========\n\nMiniconda is a minimal version of the package manager used by the\nAnaconda python distribution. It makes it easy to create local\ninstallations of python with the latest versions of the common\nscientific libraries for users who don't have root access to their\ntarget machines. Basically, when you use miniconda, you'll be\ninstalling your own version of Python into a directory under your\ncontrol which allows you to install anything else you need without\nhaving to submit a helpdesk ticket for administrative assistance.\n\nUnlike pip, the folks behind the conda distributions provide binary\ndownloads of it's selected library components. As such, only the most\npopular libraries, such as pip, NumPY and SciPy, are supported by\nconda itself. However, these do not require compilation and may be\neasier to get installed than when using pip alone. I have experienced\ndifficulty installing SciPy through pip and setup tools on our cluster\nhere at vanderbilt due to non-standard paths for certain required\ncomponents, but mini-conda always comes through.\n\nFirstly, download and install the appropriate version of miniconda at\nthe project website. Please be sure to choose the Python 2 version:\nhttp://conda.pydata.org/miniconda.html\n\nWhile it is doing the installation, please allow it to update your\nPATH information. If you prefer not to always use this version of\npython in the future, simple tell it not to update your .bashrc file\nand note the instructions for loading and unloading your new python\nenvironment. Please note that even if you chose to update your .bashrc\nfile, you will need to follow directions for loading the changes into\nyour current shell.\n\nOnce those changes have taken effect, install setuptools and scipy: $\n*conda install pip scipy*\n\nInstalling SciPy will also force the installation of NumPy, which is\nalso required for running mvtest. (setuptools includes easy_install).\n\nOnce that has been completed successfully, you should be ready to\nfollow the standard instructions for installing mvtest.\n\nWhat is MVtest?\n***************\n\n*TODO: Write some background information about the application and\nit's scientific basis.*\n\n\nDocumentation\n=============\n\nDocumentation for MVtest is still under construction. However, the\napplication provides reasonable inline help using standard unix help\narguments:\n\n> *mvtest.py -h*\n\nor\n\n> *mvtest.py --help*\n\nIn general, overlapping functionality should mimic that of PLINK.\n\n\nCommand-Line Arguments\n======================\n\nCommand line arguments used by MVtest often mimick those used by\nPLINK, except where there is no matching functionality (or the\nfunctionality differs significantly.)\n\nFor the parameters listed below, when a parameter requires a value,\nthe value must follow the argument with a single space separating the\ntwo (no '=' signs.) For flags with no specified value, passing the\nflag indicates that condition is to be \"activated\".\n\nWhen there is no value listed in the \"Type\" column, the arguments are\n*off* by default and *on* when the argument is present (i.e. by\ndefault, compression is turned off except when the flag,\n--compression, has been provided.)\n\n\nGetting help\n------------\n\n-h, --help\n\n Show this help message and exit.\n\n-v\n\n Print version number\n\n\nInput Data\n----------\n\nMVtest attempts to mimic the interface for PLINK where appropriate.\n\nAll input files should be whitespace delimited. For text based allelic\nannotations, 1|2 and A|C|G|T annotation is sufficient. All data must\nbe expressed as alleles, not as genotypes (except for IMPUTE output,\nwhich is a specialized format that is very different from the other\nforms).\n\nFor Pedigree, Transposed Pedigree and PLINK binary pedigree files, the\nusing the PREFIX arguments is sufficient and recommended if your files\nfollow the standard naming conventions.\n\n\nPedigree Data\n~~~~~~~~~~~~~\n\nPedigree data is fully supported, however it is not recommended. When\nloading pedigree data, MVtest must load the entire dataset into memory\nprior to analysis, which can result in a substantial amount of memory\noverhead that is unnecessary.\n\nFlags like --no-pheno and --no-sex can be used in any combination\ncreating MAP files with highly flexible header structures.\n\n--file \n\n (filename prefix) Prefix for .ped and .map files\n\n--ped \n\n PLINK compatible .ped file\n\n--map \n\n PLink compatible .map file\n\n--map3\n\n Map file has only 3 columns\n\n--no-sex\n\n Pedigree file doesn't have column 5 (sex)\n\n--no-parents\n\n Pedigree file doesn't have columns 3 and 4 (parents)\n\n--no-fid\n\n Pedgiree file doesn't have column 1 (family ID)\n\n--no-pheno\n\n Pedigree file doesn't have column 6 (phenotype)\n\n--liability\n\n Pedigree file has column 7 (liability)\n\n\nPLINK Binary Pedigree\n~~~~~~~~~~~~~~~~~~~~~\n\nThis format represents the most efficient storage for large GWAS\ndatasets, and can be used directly by MVtest. In addition to a minimal\noverhead, plink style bed files will also run very quickly, due to the\nefficient disk layout.\n\n--bfile \n\n (filename prefix) for .bed, .bim and .fam files\n\n--bed \n\n Binary Ped file(.bed)\n\n--bim \n\n Binary Ped marker file (.bim)\n\n--fam \n\n Binary Ped family file (.fam)\n\n\nTransposed Pedigree Data\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nTransposed Pedigree data is similar to standard pedigree except that\nthe data is arranged such that the data is organized as SNPs as rows,\ninstead of individuals. This allows MVtest to run it's analysis\nwithout loading the entire dataset into memory.\n\n--tfile \n\n Prefix for .tped and .tfam files\n\n--tped \n\n Transposed Pedigre file (.tped)\n\n--tfam \n\n Transposed Pedigree Family file (.tfam)\n\n\nPedigree/Transposed Pedigree Common Flags\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nBy default, Pedigree and Transposed Pedigree data is assumed to be\nuncompressed. However, MVtest can directly use gzipped data files if\nthey have the extension .tgz with the addition of the --compressed\nargument.\n\n--compressed\n\n Indicate that ped/tped files have been compressed with gzip and are\n named with extensions such as .ped.tgz and .tped.tgz\n\n\nIMPUTE output\n~~~~~~~~~~~~~\n\nMVtest doesn't call genotypes when performing analysis and allows\nusers to define which model to use when analyzing the data. Due to the\nfact that there is no specific location for chromosome within the\ninput files, MVtest requires that users provide chromosome, impute\ninput file and the corresponding .info file for each imputed output.\n\nDue to the huge number of expected loci, MVtest allows users to\nspecify an offset and file count for analysis. This is to allow users\nto run multiple jobs simultaneously on a cluster and work individually\non separate impute region files. Users can segment those regions even\nfurther using standard MVtest region selection as well.\n\nBy default, all imputed data is assumed to be compressed using gzip.\n\nDefault naming convention is for impute data files to end in .gen.gz\nand the info files to have the same name except for the end being\nreplaced by .info.\n\n--impute \n\n File containing list of impute output for analysis\n\n--impute-fam \n\n File containing family details for impute data\n\n--impute-offset \n\n Impute file index (1 based) to begin analysis\n\n--impute-count \n\n Number of impute files to process (for this node). Defaults to all\n remaining.\n\n--impute-uncompressed\n\n Indicate that the impute input is not gzipped, but plain text\n\n--impute-encoding\n\n (additive,dominant or recessive)\n\n Genetic model to be used when analyzing imputed data.\n\n--impute-info-ext \n\n Portion of filename denotes info filename\n\n--impute-gen-ext \n\n Portion of filename that denotes gen file\n\n--impute-info-thresh \n\n Threshold for filtering imputed SNPs with poor 'info' values\n\n\nIMPUTE File Input\n~~~~~~~~~~~~~~~~~\n\nWhen performing an analysis on IMPUTE output, users must provide a\nsingle file which lists each of the gen files to be analyzed. This\nplain text file contains 2 (or optionally 3) columns for each gen\nfile:\n\n+------------------+----------------+----------------------------------+\n| **Chromosome** | **Gen File** | **.info (optional)** |\n+==================+================+==================================+\n| N | | |\n+------------------+----------------+----------------------------------+\n| ... | ... | ... |\n+------------------+----------------+----------------------------------+\n\nThe 3rd column is only required if your .info files and .gen files are\nnot the same except for the .\n\n\nMACH output\n~~~~~~~~~~~\n\nUsers can analyze data imputed with MACH. Because most situations\nrequire many files, the format is a single file which contains either\npairs of dosage/info files, or, if the two files share the same\nfilename except for extensions, one dosage file per line.\n\nImportant: MACH doesn't provide anywhere to store chromosome and\n positions. Users may wish to embed this information into the first\n column inside the .info file. Doing so will allow MVtest to\n recognize those values and populate the corresponding fields in the\n report.To use this feature, users much use the --mach-chrpos field\n and their ID columns inside the .info file must be formatted in the\n following way:chr:pos (optionally :rsid)When the --mach-chrpos flag\n is used, MVtest will fail when it encounters IDs that aren't in this\n format and there must be at least 2 'fields' (i.e. there must be at\n least one \":\" character.When processing MACH imputed data without\n this special encoding of IDs, MCtest will be unable to recognize\n positions. As a result, unless the --mach-chrpos flag is present,\n MVtest will exit with an error if the user attempts to use\n positional filters such as --from-bp, --chr, etc.\n\nWhen running MVtest using MACH dosage on a cluster, users can instruct\na given job to anlyze data from a portion of the files contained\nwithin the MACH dosage file list by changing the --mach-offset and\n--mach-count arguments. By default, the offset starts with 1 (the\nfirst file in the dosage list) and runs all it finds. However, if one\nwere to want to split the jobs up to analyze three dosage files per\njob, they might set those values to --mach-offset 1 --mach-count 3 or\n--mach-offset 4 --mach-count 3 depending on which job is being\ndefined.\n\nIn order to minimize memory requirements, MACH dosage files can be\nloaded incrementally such that only N loci are stored in memory at a\ntime. This can be controlled using the --mach-chunk-size argument. The\nlarger this number is, the faster MVtest will run (fewer times reading\nfrom file) but the more memory is required.\n\n--mach \n\n File containing list of dosages, one per line. Optionally, lines\n may contain the info names as well (separated by whitespace) if the\n two s do not share a common base name.\n\n--mach-offset \n\n Index into the MACH file to begin analyzing\n\n--mach-count \n\n Number of dosage files to analyze\n\n--mach-uncompressed\n\n By default, MACH input is expected to be gzip compressed. If data\n is plain text, add this flag. *It should be noted that dosage and\n info files should be either both compressed or both uncompressed.*\n\n--mach-chunk-size \n\n Due to the individual orientation of the data, large dosage files\n are parsed in chunks in order to minimize excessive memory during\n loading\n\n--mach-info-ext \n\n Indicate the used by the mach info files\n\n--mach-dose-ext \n\n Indicate the used by the mach dosage files\n\n--mach-min-rsquared \n\n Indicate the minimum threshold for the rsqured value from the .info\n files required for analysis.\n\n--mach-chrpos\n\n When set, MVtest expects IDs from the .info file to be in the\n format chr:pos:rsid (rsid is optional). This will allow the report\n to contain positional details, otherwise, only the RSID column will\n have a value which will be the contents of the first column from\n the .info file\n\n\nMACH File Input\n~~~~~~~~~~~~~~~\n\nWhen running an analysis on MACH output, users must provide a single\nfile which lists of each dosage file and (optionally) the matching\n.info file. This file is a simple text file with either 1 column (the\ndosage filename) or 2 (dosage filename followed by the info filename\nseparated by whitespace).\n\nThe 2nd column is only required if the filenames aren't identical\nexcept for the extension.\n\n+--------------------------------+----------------------------------------+\n| **Col 1 (dosage )** | **Col 2 (optional info )** |\n+================================+========================================+\n| .dose | .info |\n+--------------------------------+----------------------------------------+\n| ... | ... |\n+--------------------------------+----------------------------------------+\n\n\nPhenotype/Covariate Data\n~~~~~~~~~~~~~~~~~~~~~~~~\n\nPhenotypes and Covariate data can be found inside either the standard\npedigree headers or within special PLINK style covariate files. Users\ncan specify phenotypes and covariates using either header names (if a\nheader exists in the file) or by 1 based column indices. An index of 1\nactually means the first variable column, not the first column. In\ngeneral, this will be the 3rd column, since columns 1 and 2 reference\nFID and IID.\n\n--pheno \n\n File containing phenotypes. Unless --all-pheno is present, user\n must provide either index(s) or label(s) of the phenotypes to be\n analyzed.\n\n--mphenos LIST\n\n Column number(s) for phenotype to be analyzed if number of columns\n > 1. Comma separated list if more than one is to be used.\n\n--pheno-names LIST\n\n Name for phenotype(s) to be analyzed (must be in --pheno file).\n Comma separated list if more than one is to be used.\n\n--covar \n\n File containing covariates\n\n--covar-numbers LIST\n\n Comma-separated list of covariate indices\n\n--covar-names LIST\n\n Comma-separated list of covariate names\n\n--sex\n\n Use sex from the pedigree file as a covariate\n\n--missing-phenotype CHAR\n\n Encoding for missing phenotypes as can be found in the data.\n\n--all-pheno\n\n When present, mv-test will run each phenotypes found inside the\n phenotype file.\n\n\nRestricting regions for analysis\n--------------------------------\n\nWhen specifying a range of positions for analysis, a chromosome must\nbe present. If a chromosome is specified but is not accompanied by a\nrange, the entire chromosome will be used. Only one range can be\nspecified per run.\n\nIn general, when specifying region limits, --chr must be defined\nunless using generic MACH input (which doesn't define a chromosome\nnumber nor position, in which case positional restrictions do not\napply).\n\n--snps LIST\n\n Comma-delimited list of SNP(s): rs1,rs2,rs3-rs6\n\n--chr \n\n Select Chromosome. If not selected, all chromosomes are to be\n analyzed.\n\n--from-bp \n\n SNP range start\n\n--to-bp \n\n SNP range end\n\n--from-kb \n\n SNP range start\n\n--to-kb \n\n SNP range end\n\n--from-mb \n\n SNP range start\n\n--to-mb \n\n SNP range end\n\n--exclude LIST\n\n Comma-delimited list of rsids to be excluded\n\n--remove LIST\n\n Comma-delimited list of individuals to be removed from analysis.\n This must\n\n be in the form of family_id:individual_id\n\n--maf \n\n Minimum MAF allowed for analysis\n\n--max-maf \n\n MAX MAF allowed for analysis\n\n--geno \n\n MAX per-SNP missing for analysis\n\n--mind \n\n MAX per-person missing\n\n--verbose\n\n Output additional data details in final report\n\nmvmany Helper script\n********************\n\nIn addition to the analysis program, mvtest.py, a helper script,\nmvmany.py is also included and can be used to split large jobs into\nsmaller ones suitable for running on a compute cluster. Users simply\nrun mvmany.py just like they would run mvtest.py but with a few\nadditional parameters, and mvmany.py will build multiple job scripts\nto run the jobs on multiple nodes. It records most arguments passed to\nit and will write them to the scripts that are produced.\n\nIt is important to note that mvmany.py simply generates cluster\nscripts and does not submit them.\n\n\nThe Default Template\n====================\n\nWhen mvmany.py is first run, it will generate a copy of the default\ntemplate inside the user's home directory named .mv-many.template.\nThis template is used to define the job details that will be written\nto each of the job scripts. By default, the template is configured for\nthe SLURM cluster software, but can easily be changed to work with any\ncluster software that works similarly to the SLURM job manager, such\nas TORQUE/PBS or sungrid.\n\nIn addition to being able to replace the preprocessor definitions to\nwork with different cluster manager software, the user can also add\nuser specific definitions, such as email notifications or account\nspecification, giving the user the the options necessary to run the\nsoftware under many different system configurations.\n\n\nExample Template (SLURM)\n------------------------\n\nAn example template might look like the following\n\n #!/bin/bash\n #SBATCH --job-name=$jobname\n #SBATCH --nodes=1\n #SBATCH --tasks-per-node=1\n #SBATCH --cpus-per-task=1\n #SBATCH --mem=$memory\n #SBATCH --time=$walltime\n #SBATCH --error $logpath/$jobname.e\n #SBATCH --output $respath/$jobname.txt\n\n cd $pwd\n\n $body\n\nIt is important to note that this block of text contains a mix of\nSLURM preprocessor settings (such as #SBATCH --job-name) as well as\nvariables which will be replaced with appropriate values (such as\n$jobname being replaced with a string of text which is unique to that\nparticular job). Each cluster type has it's own syntax for setting the\nnecessary variables and it is assumed that the user will know how to\ncorrectly edit the default template to suit their needs.\n\n\nExample TORQUE Template\n-----------------------\n\nFor instance, to use these scripts on a TORQUE based cluster, one\nmight update ~/.mvmany.template to the following\n\n #!/bin/bash\n #PBS -N $jobname\n #PBS -l nodes=1\n #PBS -l ppn=1\n #PBS -l mem=$memory\n #PBS -l walltime=$walltime\n #PBS -e $logpath/$jobname.e\n #PBS -o $respath/$jobname.txt\n\n cd $pwd\n\n $body\n\nPlease note that not all SLURM settings have a direct mapping to PBS\nsettings and that it is up to the user to understand how to properly\nconfigure their cluster job headers.\n\nIn general, the user should ensure that each of the variables are\nproperly defined so that the corresponding values will be written to\nthe final job scripts. The following variables are replaced based on\nthe job that is being performed and the parameters passed to the\nprogram by the user (or their default values):\n\n+-----------------------------------+-----------------------------------------------+\n| **Variable** | **Purpose** |\n+===================================+===============================================+\n| $jobname | Unique name for the current job |\n+-----------------------------------+-----------------------------------------------+\n| $memory (2G) | Amount of memory to provide each job. |\n+-----------------------------------+-----------------------------------------------+\n| $walltime (3:00:00) | Define amount of time to be assigned to jobs |\n+-----------------------------------+-----------------------------------------------+\n| $logpath | Directory specified for writing logs |\n+-----------------------------------+-----------------------------------------------+\n| $respath | Directory sepcified for writing results |\n+-----------------------------------+-----------------------------------------------+\n| $pwd | current working dir when mvmany is run |\n+-----------------------------------+-----------------------------------------------+\n| $body | Statements of execution |\n+-----------------------------------+-----------------------------------------------+\n\n\nCommand Line Arguments\n======================\n\nmvmany.py exposes the following additional arguments for use when\nrunning the script.\n\n--mv-path PATH\n\n Set path to mvtest.py if it's not in PATH\n\n--logpath PATH\n\n Path to location of job's error output\n\n--res-path PATH\nPath to location of job's results\n\n--script-path PATH\n\n Path for writing script files\n\n--template FILENAME\n\n Specify a template other than the default\n\n--snps-per-job INTEGER\n\n Specify the number of SNPs to be run at one time\n\n--mem STRING\n\n Specify the amount of memory to be requested for each job\n\n--wall-time\n\n Specify amount of time to be requested for each job\n\nThe option, --mem, is dependent on the type of input that is being\nused as well as configurable options to be used. The user should\nperform basic test runs to determine proper settings for their jobs.\nBy default, 2G is used, which is generally more than adequate for\nbinary pedigrees, IMPUTE and transposed pedigrees. Others will vary\ngreatly based on the size of the dataset and the settings being used.\n\nThe option, --wall-time, is largely machine dependent but will vary\nbased on the actual dataset's size and completeness of the data. Users\nshould perform spot tests to determine reasonable values. By default,\nthe requested wall-time is 3 days, which is sufficient for a GWAS\ndataset, but probably not sufficient for an entire whole exome dataset\nand the time required will depend on just how many SNPs are being\nanalyzed by any given node.\n\nIn general, mvmany.py accepts all arguments that mvtest.py accepts,\nwith the exception of those that are more appropriately defined by\nmvmany.py itself. These include the following arguments\n\n --chr\n --snps\n --from-bp\n --to-bp\n --from-kb\n --to-kb\n --from-mb\n --to-mb\n\nTo see a comprehensive list of the arguments that mvmany.py can use\nsimply ask the program itself\n\n mvmany.py --help\n\nUsers can have mvmany split certain types of jobs up into pieces and\ncan specify how many independent commands to be run per job. At this\ntime, mvmany.py assumes that imputation data is already split into\nfragments and doesn't support running parts of a single file on\nmultiple nodes.\n\nThe results generated can be manually merged once all nodes have\ncompleted execution.\n\nChangelog\n=========\n\nmvtest.py: 1.0.4\n\t* Fixed a bug associated with running more than one phenotype at once.\nmvtest.py: 1.0.3\n * Removed special requirements for MACH input (chr:pos) and made that optional.\nmvtest.py: 1.0.2\n\t* added an exception when using improperly formatted MACH info file(s)\n\t* updated documentation to draw attention to the additional MACH info file requirements\nmvtest.py: 1.0.1 released\n\t* changes to the setup.cfg and setup.py to accomodate changes made to work with gh-pages.\n\nmvtest.py: 1.0.0 released", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/edwards-lab/MVtest/archive/v1.0.5.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/edwards-lab/MVtest", "keywords": "GWAS,genetic analysis", "license": "GPL", "maintainer": null, "maintainer_email": null, "name": "mvtest", "package_url": "https://pypi.org/project/mvtest/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/mvtest/", "project_urls": { "Download": "https://github.com/edwards-lab/MVtest/archive/v1.0.5.tar.gz", "Homepage": "https://github.com/edwards-lab/MVtest" }, "release_url": "https://pypi.org/project/mvtest/1.0.5/", "requires_dist": null, "requires_python": null, "summary": "['GWAS analysis']", "version": "1.0.5" }, "last_serial": 2492428, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "5b9259e29dfa7a919ad328f08237ebab", "sha256": "3d9826046c6f66b932a57a8452fca4a79aec9dd87ff809f0a1063df74e2bb728" }, "downloads": -1, "filename": "mvtest-1.0.0.tar.gz", "has_sig": false, "md5_digest": "5b9259e29dfa7a919ad328f08237ebab", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 686790, "upload_time": "2016-01-26T19:56:21", "url": "https://files.pythonhosted.org/packages/bb/9d/99cd558a8455c64d2131429c5cb3f8a08a356454e68e3de22362392d0a33/mvtest-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "732c223655c4feb038d8e51782bf2638", "sha256": "bee3493ba7c6fe400d603cfc41f2f9892492fa79791e6565e1669b3383b4bc95" }, "downloads": -1, "filename": "mvtest-1.0.1.tar.gz", "has_sig": false, "md5_digest": "732c223655c4feb038d8e51782bf2638", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 52536, "upload_time": "2016-01-26T20:26:01", "url": "https://files.pythonhosted.org/packages/40/7f/4a0b8102f758673fb7c96bf6fe19b859af067106d91ff02e12e187e90670/mvtest-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "565c6f434b0540941cf281c2c32f062f", "sha256": "56340371a12f86e469d687d46ff33cbedc1ccf30d2e0cd254ac87bd3c856ca0d" }, "downloads": -1, "filename": "mvtest-1.0.2.tar.gz", "has_sig": false, "md5_digest": "565c6f434b0540941cf281c2c32f062f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 702984, "upload_time": "2016-02-22T17:17:53", "url": "https://files.pythonhosted.org/packages/39/bc/e01d610c61b7fe7b1f90cd88c297cc139af4fac8a2e52838302881f54a3d/mvtest-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "5db74e349522a3ebf2c070626cbaa78a", "sha256": "cd794a47fe5d086873d33635aaa09608f886523474a3393042aa65c476dcbbde" }, "downloads": -1, "filename": "mvtest-1.0.3.tar.gz", "has_sig": false, "md5_digest": "5db74e349522a3ebf2c070626cbaa78a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 843359, "upload_time": "2016-02-29T20:54:47", "url": "https://files.pythonhosted.org/packages/fd/0a/390b0bb263848d20d8e87515bc1b98032afc1d404cdd31a1aa511a470b7a/mvtest-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "3bf30da0b56b21140e80bb48451e79f2", "sha256": "491adb434223568216431001fc39f250c6f1f264d02d16abfe9232efcd43cb48" }, "downloads": -1, "filename": "mvtest-1.0.4.tar.gz", "has_sig": false, "md5_digest": "3bf30da0b56b21140e80bb48451e79f2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 842870, "upload_time": "2016-03-03T15:18:30", "url": "https://files.pythonhosted.org/packages/18/6d/ee44d389a119591161bcbeeac3244c428e9ddb1c73f0ce4f44214e5d731d/mvtest-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "4c545da412115b1ccc3c625004b8d9f3", "sha256": "f5cf4bc2f9b5617555670ab5ae342f3e0c239652e552568f24b0cb30acc0d07d" }, "downloads": -1, "filename": "mvtest-1.0.5.tar.gz", "has_sig": false, "md5_digest": "4c545da412115b1ccc3c625004b8d9f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 143416, "upload_time": "2016-11-30T19:31:56", "url": "https://files.pythonhosted.org/packages/3d/bf/00f49878b9abd5e60f75cbbb0d6efc3d81a28763d51e3612f0592c00c21b/mvtest-1.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "4c545da412115b1ccc3c625004b8d9f3", "sha256": "f5cf4bc2f9b5617555670ab5ae342f3e0c239652e552568f24b0cb30acc0d07d" }, "downloads": -1, "filename": "mvtest-1.0.5.tar.gz", "has_sig": false, "md5_digest": "4c545da412115b1ccc3c625004b8d9f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 143416, "upload_time": "2016-11-30T19:31:56", "url": "https://files.pythonhosted.org/packages/3d/bf/00f49878b9abd5e60f75cbbb0d6efc3d81a28763d51e3612f0592c00c21b/mvtest-1.0.5.tar.gz" } ] }