{ "info": { "author": "Mehari B. Zerihun", "author_email": "mbzerihun@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "License :: OSI Approved :: MIT License", "Operating System :: POSIX :: Linux", "Programming Language :: C", "Programming Language :: C++", "Programming Language :: Python :: 3", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "# About `pydca`\n`pydca` is Python implementation of direct coupling analysis (DCA) of residue coevolution for protein and RNA sequence families using the **__mean-field__** and **__pseudolikelihood maximization__** algorithms. Given multiple sequence alignment (MSA) files in FASTA format, `pydca` computes the coevolutionary scores of pairs of sites in the alignment. In addition, when an optional file containing a reference sequence is supplied, scores corresponding to pairs of sites of this reference sequence are computed by mapping the reference sequence to the MSA. The software provides command line utilities or it can be used as a library. \n\n# Prerequisites\n`pydca` is implemented mainly in Python with the pseudolikelihood maximization parameter inference part implemented using C++ backend for optimization. To install pydca and successfully carry out DCA computations, the following are required. \n* Python 3, version 3.5 or later.\n* C++ compiler that supports C++11 (e.g. the GNU compiler collection).\n* Optionally, OpenMP for multithreading support.\n\n\n# Installing\nTo install the current version of `pydca` from PyPI, run on the command line\n```bash\n$ pip install pydca\n```\nor you can use the `install.sh` bash script as \n```bash \n$ source install.sh\n```\n\n# Using `pydca` as a Python Library\nAfter installation, pydca can be imported into other Python source codes and used. \n[Here is IPython Notebook example](https://github.com/KIT-MBS/pydca/blob/master/examples/pydca_demo.ipynb). \nIf you encounter a problem opening the Ipython Notebook example, copy and past the URL [here](https://nbviewer.jupyter.org/).\n\n# Running `pydca` From Command Line\nWhen `pydca` is installed, it provides three main command. Namely `pydca`, `plmdca`, and `mfdca`. \nThe command `pydca` is used for tasks such as trimming alignment data before DCA computation, and \nvisualization of contact maps or true positive rates. The other two command are associated with \nDCA computation with the pseudolikelihood maximization algorithm (plmDCA) or the mean-field algorithm (mfDCA).\nBelow we show some usage examples of all the three commands.\n## Trimming MSA data \nTrim gaps by reference sequence:\n```bash\n$ pydca trim_by_refseq --remove_all_gaps --verbose\n```\nTrim by percentage of gaps in MSA columns:\n```bash \n$ pydca trim_by_gap_size --max_gap 0.9 --verbose\n```\n### DCA Computation\n#### Using `pydca`'s Pseudolikelihood Maximization Algorithm\n```bash \n$ plmdca compute_fn --max_iterations 500 --num_threads 6 --apc --verbose \n```\nWe can also the values of regularization parameters \n```bash\n$ plmdca compute_fn --apc --lambda_h 1.0 --lambda_J 50.0 --verbose \n```\nThe command `compute_fn` computes DCA scores obtained from the Frobenius norm of the couplings. `--apc` performs\naverage product correction (APC). To obtain DCA scores from direct-information (DI) we replace the subcommand \n`compute_fn` by `compute_di`. \n#### Using `pydca`'s Mean-Field Algorithm \n```bash\n$ mfdca compute_fn --apc --pseudocount 0.5 --verbose\n```\n### Contact Map Visualization \nWhen protein/RNA sequence family has a resolved PDB structure, we can evaluate the \nperformance of `pydca` by contact map visualization. Example:\n```bash\n$ pydca plot_contact_map --verbose \n```\n### Plotting True Positive Rate\nIn addition to contact map we can evaluate the performance of `pydca` by plotting \nthe true positive rate. \n```bash\n$ pydca plot_contact_map --verbose\n```\nTo get help message about a (sub)command we use, for example, \n```bash\n$ pydca --help\n```\n```bash\n$ plmdca compute_fn --help\n```\n\n# References\n### If you use pydca for your work please cite the following references\n1. Zerihun, MB., Pucci, F, Peter, EK, and Schug, A.
\npydca: v1.0: a comprehensive software for direct coupling analysis of RNA and protein sequences
\n Bioinformatics, btz892, doi.org/10.1093/bioinformatics/btz892\n\n2. Morcos, F., Pagnani, A., Lunt, B., Bertolino, A., Marks, DS., Sander, C., Zecchina, R., Onuchic, JN., Hwa, T., and Weigt, M.
\nDirect-coupling analysis of residue coevolution captures native contacts across many protein families
\nPNAS December 6, 2011 108 (49) E1293-E1301, doi:10.1073/pnas.1111471108\n\n2. Ekeberg, M., L\u00f6vkvist, C., Lan, Y., Weigt, M., & Aurell, E. (2013).
\nImproved contact prediction in proteins: Using pseudolikelihoods to infer Potts models.
\nPhysical Review E, 87(1), 012707, doi:10.1103/PhysRevE.87.012707\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "https://pypi.org/project/pydca/", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/KIT-MBS/pydca", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "pydca", "package_url": "https://pypi.org/project/pydca/", "platform": "", "project_url": "https://pypi.org/project/pydca/", "project_urls": { "Download": "https://pypi.org/project/pydca/", "Homepage": "https://github.com/KIT-MBS/pydca" }, "release_url": "https://pypi.org/project/pydca/1.23/", "requires_dist": null, "requires_python": ">=3.5", "summary": "Direct couplings analysis (DCA) for protein and RNA sequences", "version": "1.23", "yanked": false, "yanked_reason": null }, "last_serial": 10489106, "releases": { "0.2": [ { "comment_text": "", "digests": { "md5": "065d2c902c9b4a1a5240d076af6d359b", "sha256": "24a0d423661162f34f4848495c268055f1fbbb724cd13a22a23ab8ee1d2641ba" }, "downloads": -1, "filename": "pydca-0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "065d2c902c9b4a1a5240d076af6d359b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.5", "size": 59999, "upload_time": "2019-05-28T13:05:33", "upload_time_iso_8601": "2019-05-28T13:05:33.032207Z", "url": "https://files.pythonhosted.org/packages/ba/52/078fab5f52c7cf1923774cdc1f3f71e5b3d5d532174d8c2024e36e193254/pydca-0.2-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "6dc116876f1a3886dabe382be27d6254", "sha256": "46de674ba8f55e57ad787204131cf174226111ac0f1eb99958f40ec75287817a" }, "downloads": -1, "filename": "pydca-0.2.tar.gz", "has_sig": false, "md5_digest": "6dc116876f1a3886dabe382be27d6254", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 53131, "upload_time": "2019-05-28T13:05:34", "upload_time_iso_8601": "2019-05-28T13:05:34.946556Z", "url": "https://files.pythonhosted.org/packages/23/f1/84f57c282955508dfb1689d5301224f4b0f61f1d5d2334138c4eacda4851/pydca-0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "1.0": [ { "comment_text": "", "digests": { "md5": "689545039c33c49c1a481a8a44a38501", "sha256": "107c92b71049826a6d569998a056a3b7512cd2467a7fc91d2ac0a8a190771f98" }, "downloads": -1, "filename": "pydca-1.0.tar.gz", "has_sig": false, "md5_digest": "689545039c33c49c1a481a8a44a38501", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 93872, "upload_time": "2019-10-16T12:03:35", "upload_time_iso_8601": "2019-10-16T12:03:35.305504Z", "url": "https://files.pythonhosted.org/packages/61/d7/bdfec12a3dab6f9028e395851001e8907dbf4bd6937c4b247d6af26ebc0c/pydca-1.0.tar.gz", "yanked": false, "yanked_reason": null } ], "1.20": [ { "comment_text": "", "digests": { "md5": "48ad3f00154b58adedc556b76f460917", "sha256": "3d7d31584f4fc796e6c603bf86f404a056af188bc6308b3c947d5e2599fd32c9" }, "downloads": -1, "filename": "pydca-1.20.tar.gz", "has_sig": false, "md5_digest": "48ad3f00154b58adedc556b76f460917", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 95643, "upload_time": "2019-10-29T12:34:47", "upload_time_iso_8601": "2019-10-29T12:34:47.859657Z", "url": "https://files.pythonhosted.org/packages/8d/3c/822307500af52dfbf8b9696b13fbce938be034b31c054b93710c6b8f2d1a/pydca-1.20.tar.gz", "yanked": false, "yanked_reason": null } ], "1.21": [ { "comment_text": "", "digests": { "md5": "b322e08f5bcf454d43584faffbf699b4", "sha256": "471a8834ece4d38a701ac94c536d0f07e327bce0761ef677de1d07676d250a4b" }, "downloads": -1, "filename": "pydca-1.21.tar.gz", "has_sig": false, "md5_digest": "b322e08f5bcf454d43584faffbf699b4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 95980, "upload_time": "2019-10-31T10:14:32", "upload_time_iso_8601": "2019-10-31T10:14:32.420657Z", "url": "https://files.pythonhosted.org/packages/fb/13/deff764a945f53356d4ccb477308b1fc44d1077171a83a5e7c3bd7bb75b3/pydca-1.21.tar.gz", "yanked": false, "yanked_reason": null } ], "1.22": [ { "comment_text": "", "digests": { "md5": "6422e2a2aed59d39dbd3a73392f2fef7", "sha256": "74bef1c0535fcbfa825437f138c7850f5d1d32fbef9546733e98df511483dc95" }, "downloads": -1, "filename": "pydca-1.22.tar.gz", "has_sig": false, "md5_digest": "6422e2a2aed59d39dbd3a73392f2fef7", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 96034, "upload_time": "2020-01-08T15:18:34", "upload_time_iso_8601": "2020-01-08T15:18:34.581265Z", "url": "https://files.pythonhosted.org/packages/6e/e7/fdd63b5e01aecacafe7e6cd0b00424c70423a9b14652666e01f85a8e968b/pydca-1.22.tar.gz", "yanked": false, "yanked_reason": null } ], "1.23": [ { "comment_text": "", "digests": { "md5": "83a2cad222b2e923ddc20c3703c90a82", "sha256": "41338ca922ca073dd2c3e3a771adeb9b21fccc55e9aeebfdd3ca73dcd3c54fda" }, "downloads": -1, "filename": "pydca-1.23.tar.gz", "has_sig": false, "md5_digest": "83a2cad222b2e923ddc20c3703c90a82", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 98668, "upload_time": "2021-05-27T14:53:31", "upload_time_iso_8601": "2021-05-27T14:53:31.201424Z", "url": "https://files.pythonhosted.org/packages/d7/31/2cb1d642ff79700c5fb4932a7792edbf5f125376ac9f6eedb98f7e4c2710/pydca-1.23.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "83a2cad222b2e923ddc20c3703c90a82", "sha256": "41338ca922ca073dd2c3e3a771adeb9b21fccc55e9aeebfdd3ca73dcd3c54fda" }, "downloads": -1, "filename": "pydca-1.23.tar.gz", "has_sig": false, "md5_digest": "83a2cad222b2e923ddc20c3703c90a82", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.5", "size": 98668, "upload_time": "2021-05-27T14:53:31", "upload_time_iso_8601": "2021-05-27T14:53:31.201424Z", "url": "https://files.pythonhosted.org/packages/d7/31/2cb1d642ff79700c5fb4932a7792edbf5f125376ac9f6eedb98f7e4c2710/pydca-1.23.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }