{ "info": { "author": "Lars Arvestad", "author_email": "arve@math.su.se", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: GNU General Public License v3 (GPLv3)", "Operating System :: OS Independent", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "# modelmatcher: Rapid identification of evolutionary models\n\nThis tool reads multiple sequence alignments and determines a suitable sequence\nevolution model for your phylogenetic analysis.\n\n## Usage\n\nExample usage:\n\n``` shell\n$ modelmatcher inputfile.fasta\n```\n\nThe input file is a multiple sequence alignmnent in one of these common formats:\n\n* FASTA\n* Clustal\n* NEXUS\n* PHYLIP\n* STOCKHOLM\n\nThe output is a list of models, in order of fit to data, and their modelmatcher score.\nThe base model (such as JTT, WAG, LG, etc) is predicted, as well as whether one should\nadapt to the alignments amino acid composition (i.e., JTT+F, WAG+F, etc).\n\nIf you want to automatically feed the prediction from `modelmatcher` to a phylogenetic inference software, consider using\nthe `-of` option: \n```shell\niqtree -s infile.phy -m $(modelmatcher -of iqtree infile.phy)\n```\nThe dollar-parenthesis is a subcommand and the output is a single model name. Only models accepted by the given application (here: IQTREE) are output.\n\n\n\n### Options\n\nOptional options:\n```\n -h, --help show this help message and exit\n -f {guess,fasta,clustal,nexus,phylip,stockholm}, --format {guess,fasta,clustal,nexus,phylip,stockholm}\n Specify what sequence type to assume. Be specific if\n the file is not recognized automatically. When reading\n from stdin, the format is always guessed to be FASTA.\n Default: guess\n -m filename, --model filename\n Add the model given in the file to the comparisons.\n -nf, --no-F-testing Do not try +F models, i.e., do not test with amino\n acid frequencies estimated from the MSA.\n -s int, --sample-size int\n For alignments with many sequences, decide on an upper\n bound of sequence pairs to use from the MSA. The\n computational complexity grows quadratically in the\n number of sequences, so a choice of 5000 bounds the\n growth for MSAs with more than 100 sequence.\n -of {tabular,json,iqtree,raxml,phyml,mrbayes}, --output_format {tabular,json,iqtree,raxml,phyml,mrbayes}\n Choose output format. Tabular format is default. JSON\n is for convenient later parsing, with some additional\n meta-data added. For one-line output convenient for\n immediate use by inference tools, consider raxml and\n similar choices. Note that the PhyML and MrBayes\n options are restricted to their implemented models.\n Although PhyML supports the +F models (using the \"-f\n e\" option), this is not reflected in the output from\n \"modelmatcher -of phyml ...\" at this time.\n --list-models Output a list of models implemented in modelmatcher,\n then exit.\n --verbose Output progress information\n --version\n```\nSee the section \"Output\" below for some more examples. \n\n\n### Input formats\n\nInput format is detected automatically from the following list, but can also be\nrequested specifically.\n\n* FASTA\n* Phylip\n* Nexus\n* Clustal\n* Stockholm\n\n### Output\n\nThe default output is given as a simple text table, or in JSON format for easy parsing by\nother scripts, ranking possible models in preference order. For example, the command above may yield a table looking like:\n\n```\nWAG 7.972\nVT 8.238\nBLOSUM62 8.478\nJTT 8.864\nJTT-DCMUT 8.917\nLG 9.984\nDCMUT 10.467\nDayhoff 10.495\nFLU 11.211\nHIVb 12.853\nRtREV 14.048\ncpREV 14.186\nHIVw 17.338\nMtZoa 18.476\nMtMAM 21.453\nmtArt 21.741\nMtREV 22.059\n```\nEach model is given with its modelmatcher score.\n\nAlternatively, the same analysis can look like:\n\n``` shell\n$ modelmatcher --json inputfile.fasta\n{\"n_observations\": 863692, \"infile\": \"inputfile.fasta\", \"n_seqs\": 66, \"model_ranking\": [[\"WAG\", 7.972410383355675], [\"VT\", 8.238362164888876], [\"BLOSUM62\", 8.478000205922985], [\"JTT\", 8.863578165338444], [\"JTT-DCMUT\", 8.917496451351846], [\"LG\", 9.983874357603963], [\"DCMUT\", 10.466872509785343], [\"Dayhoff\", 10.49522598111376], [\"FLU\", 11.21137482805874], [\"HIVb\", 12.852877789672046], [\"RtREV\", 14.047539707772572], [\"cpREV\", 14.18648653904322], [\"HIVw\", 17.338193829402], [\"MtZoa\", 18.475515151949153], [\"MtMAM\", 21.452528293860837], [\"mtArt\", 21.740741039472418], [\"MtREV\", 22.058622800684176]]}\n```\n\n\n## Install\n\nRecommended installation is:\n```\npip install --upgrade pip\npip install modelmatcher\n```\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/arvestad/modelmatcher", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "modelmatcher", "package_url": "https://pypi.org/project/modelmatcher/", "platform": "", "project_url": "https://pypi.org/project/modelmatcher/", "project_urls": { "Homepage": "https://github.com/arvestad/modelmatcher" }, "release_url": "https://pypi.org/project/modelmatcher/1.2/", "requires_dist": [ "biopython (>=1.70)", "numpy", "console-progressbar (>=1.1.2)" ], "requires_python": ">=3.2", "summary": "Rapid identification of sequence evolution models", "version": "1.2" }, "last_serial": 5976324, "releases": { "1.0": [ { "comment_text": "", "digests": { "md5": "7882e5e0473bd96dd480105f9f4094f3", "sha256": "134a4eaa8b9266f66d67fd5b60046bc70b3f696b923c76cf71ddd31b39383f22" }, "downloads": -1, "filename": "modelmatcher-1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "7882e5e0473bd96dd480105f9f4094f3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 4982, "upload_time": "2019-07-13T17:50:43", "url": "https://files.pythonhosted.org/packages/34/bb/9135573307132e53421b576ecd94a6e962580786c3b05732d4791d2507f5/modelmatcher-1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9af66f3338c9f04835904b6af5689e0a", "sha256": "300cc0467e07d9c84f216d71769f334917c223461874441b1a986fc3ac8913a3" }, "downloads": -1, "filename": "modelmatcher-1.0.tar.gz", "has_sig": false, "md5_digest": "9af66f3338c9f04835904b6af5689e0a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 7847, "upload_time": "2019-07-13T17:50:45", "url": "https://files.pythonhosted.org/packages/9b/1e/c4b8ab522e20f875a07b902ca1e7e0a3e9651cbc64712072becf6d11e76f/modelmatcher-1.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "0e8a67b7ec39935da5a760781dfe1cbd", "sha256": "ff6c776b75e8a89ba7fc0ee5d263addad09a8b6a31b01e59b6cfef6e072e1149" }, "downloads": -1, "filename": "modelmatcher-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0e8a67b7ec39935da5a760781dfe1cbd", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 5006, "upload_time": "2019-07-16T08:23:32", "url": "https://files.pythonhosted.org/packages/f7/72/ea616e04ff9f20efbda8157c6d87d39cfd88bef0be576b8e38b64d89f07e/modelmatcher-1.0.1-py3-none-any.whl" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "a92d1a82ff59eedf6a0992437a91647d", "sha256": "2c6e78dfcc6ebb3fcf5f83ef6be47b9a4d1f5b6e04b5dc8024798d7b2eb84283" }, "downloads": -1, "filename": "modelmatcher-1.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "a92d1a82ff59eedf6a0992437a91647d", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 7912, "upload_time": "2019-08-08T07:35:44", "url": "https://files.pythonhosted.org/packages/74/ed/e76ad012f46035a87545f8dc6076a2c27bc7ae8531ffaed69b36328f6d45/modelmatcher-1.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1dfb0e7d52fee49b14d829850e1192a2", "sha256": "71f8064cbc743099d7387562de4cafb8dcf2f2442e039b1238ff0b3067680020" }, "downloads": -1, "filename": "modelmatcher-1.1.0.tar.gz", "has_sig": false, "md5_digest": "1dfb0e7d52fee49b14d829850e1192a2", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 7701, "upload_time": "2019-08-08T07:35:46", "url": "https://files.pythonhosted.org/packages/42/38/eae325055f3ab7c4736fa765ee4d8d453f89a8fd37850a0fdefcf12d1c24/modelmatcher-1.1.0.tar.gz" } ], "1.1.1": [ { "comment_text": "", "digests": { "md5": "e92f8d248df99dc09b591de2c0b27b4f", "sha256": "98b9b37ca070f95013e98f78d1f4f2b68f6ee45c922de66601e47081ae99514c" }, "downloads": -1, "filename": "modelmatcher-1.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e92f8d248df99dc09b591de2c0b27b4f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 8345, "upload_time": "2019-08-10T09:14:31", "url": "https://files.pythonhosted.org/packages/ca/0c/d7af90ba2c05111b5a96294a74849789030c70247bd5e624fb0c77b3110b/modelmatcher-1.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7a7c5ebce50932ec2914871fa10da56a", "sha256": "e99b2955c46dd850eb3a3d2f88d34e27155f9b8b190cb06c7ea5ea0ba2ebc969" }, "downloads": -1, "filename": "modelmatcher-1.1.1.tar.gz", "has_sig": false, "md5_digest": "7a7c5ebce50932ec2914871fa10da56a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 12614, "upload_time": "2019-08-10T09:14:33", "url": "https://files.pythonhosted.org/packages/aa/e7/ac6a5752e69724baa73e333675336aafd0225e62595da96b4317ac417e2c/modelmatcher-1.1.1.tar.gz" } ], "1.1.2": [ { "comment_text": "", "digests": { "md5": "b7695e0b238a53481cbc0025d7238525", "sha256": "846fa15fe4566c6d76706318a4f9c298cbb2449613676fdb268a0ce94da60ba4" }, "downloads": -1, "filename": "modelmatcher-1.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "b7695e0b238a53481cbc0025d7238525", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 31292, "upload_time": "2019-08-12T07:23:46", "url": "https://files.pythonhosted.org/packages/3b/e8/b8bc1ab09a6c43a9ab47122779015bf00f5fa1b61340b3d398bbef1a0bf7/modelmatcher-1.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c4cfcafad24f8dc0fc95b3574bbc13f0", "sha256": "45d9dab8b774eec0caaf5ed625be8409ea07c8bbc16f9ca336e8fbbbd79915b8" }, "downloads": -1, "filename": "modelmatcher-1.1.2.tar.gz", "has_sig": false, "md5_digest": "c4cfcafad24f8dc0fc95b3574bbc13f0", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 34980, "upload_time": "2019-08-12T07:23:48", "url": "https://files.pythonhosted.org/packages/96/0c/953445a05be4e52d0f2c6da55927e6c23bcb4571d2ff73bac40e227b7e53/modelmatcher-1.1.2.tar.gz" } ], "1.1.3": [ { "comment_text": "", "digests": { "md5": "71ef3b400bdfb2480b6c5839ccdf83ef", "sha256": "086803e65041258390bf3615f3595796257531d6a5d3832849c979929677641d" }, "downloads": -1, "filename": "modelmatcher-1.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "71ef3b400bdfb2480b6c5839ccdf83ef", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 32800, "upload_time": "2019-09-15T16:05:03", "url": "https://files.pythonhosted.org/packages/87/19/eb75ae88231c73ec1192627507751b5d820ed4f95a3cab20abe96fe02e9d/modelmatcher-1.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d9f3cec84e887970d7618f162913a606", "sha256": "fb49a95b122d9e2d2192e7d5598314f41a9e3559a576fca518cda3232ceb3058" }, "downloads": -1, "filename": "modelmatcher-1.1.3.tar.gz", "has_sig": false, "md5_digest": "d9f3cec84e887970d7618f162913a606", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 33711, "upload_time": "2019-09-15T16:05:05", "url": "https://files.pythonhosted.org/packages/c6/4e/83bbfe310034b8c3f2ecc0ec5d07f5407e1cf30d5fb3e41e1521bff8d4e0/modelmatcher-1.1.3.tar.gz" } ], "1.1.4": [ { "comment_text": "", "digests": { "md5": "a8606046b52b41dce722cc404962663a", "sha256": "0548bc5a4615d23ae7e86ed85b19f8c08415b7fe252da6f2eb72e61ef97d0e42" }, "downloads": -1, "filename": "modelmatcher-1.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "a8606046b52b41dce722cc404962663a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 33216, "upload_time": "2019-10-14T09:53:37", "url": "https://files.pythonhosted.org/packages/41/05/d6ac440ebadf37628fa8669136128e2b466c4a2ca5c60c5dba36dd5428b8/modelmatcher-1.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ab30760f2df84355464af8638db2ea25", "sha256": "516a797efbc94f06078e459ec44968c514c5429dd4051683f3aa8901ba7ce621" }, "downloads": -1, "filename": "modelmatcher-1.1.4.tar.gz", "has_sig": false, "md5_digest": "ab30760f2df84355464af8638db2ea25", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 32799, "upload_time": "2019-10-14T09:53:39", "url": "https://files.pythonhosted.org/packages/cc/c4/d68e2f5ceb4c77ce9cd6bdfefcd3879e9b3ed204ddbabaec1455bdc2bdef/modelmatcher-1.1.4.tar.gz" } ], "1.2": [ { "comment_text": "", "digests": { "md5": "ad96e70a1e2f68ae388b3f502cc32a39", "sha256": "b309990a195c2d7ea63d85e7a3c85861116cb268c7e3eee23d42ced22354cc5f" }, "downloads": -1, "filename": "modelmatcher-1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ad96e70a1e2f68ae388b3f502cc32a39", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 33182, "upload_time": "2019-10-15T11:25:16", "url": "https://files.pythonhosted.org/packages/16/14/ef8ba9d1523fcd8e7ab11c313df9cadd8a8053fb0879f4bd9bcfec375a0c/modelmatcher-1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b4e40f472f0227a1c339900ac124986e", "sha256": "870d66b55ed7a13c542636e7c13b9c12e08660db1d16952fbdb302bc57668101" }, "downloads": -1, "filename": "modelmatcher-1.2.tar.gz", "has_sig": false, "md5_digest": "b4e40f472f0227a1c339900ac124986e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 34575, "upload_time": "2019-10-15T11:25:18", "url": "https://files.pythonhosted.org/packages/cd/d4/1959ee1d121e6309c87b6c40d7480dc3253ed650215ffe09ef26a6b43b51/modelmatcher-1.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ad96e70a1e2f68ae388b3f502cc32a39", "sha256": "b309990a195c2d7ea63d85e7a3c85861116cb268c7e3eee23d42ced22354cc5f" }, "downloads": -1, "filename": "modelmatcher-1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ad96e70a1e2f68ae388b3f502cc32a39", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.2", "size": 33182, "upload_time": "2019-10-15T11:25:16", "url": "https://files.pythonhosted.org/packages/16/14/ef8ba9d1523fcd8e7ab11c313df9cadd8a8053fb0879f4bd9bcfec375a0c/modelmatcher-1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "b4e40f472f0227a1c339900ac124986e", "sha256": "870d66b55ed7a13c542636e7c13b9c12e08660db1d16952fbdb302bc57668101" }, "downloads": -1, "filename": "modelmatcher-1.2.tar.gz", "has_sig": false, "md5_digest": "b4e40f472f0227a1c339900ac124986e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.2", "size": 34575, "upload_time": "2019-10-15T11:25:18", "url": "https://files.pythonhosted.org/packages/cd/d4/1959ee1d121e6309c87b6c40d7480dc3253ed650215ffe09ef26a6b43b51/modelmatcher-1.2.tar.gz" } ] }