{ "info": { "author": "Maxime Jumelle", "author_email": "maxime@aipcloud.io", "bugtrack_url": null, "classifiers": [], "description": "\n[![Build Status](https://travis-ci.org/MaximeJumelle/pycopula.svg?branch=master)](https://travis-ci.org/MaximeJumelle/pycopula)\n\n![Screenshot](https://raw.githubusercontent.com/MaximeJumelle/pycopula/master/resources/logo.png)\n\nPyCopula is an easy-to-use Python library that allows you to study random variables dependencies with copulas. It comes with useful tools and features to plot, estimate or simulate on copulas.\n\n* [Online Documentation](https://maximejumelle.github.io/pycopula/)\n\n## Installation\nInstallation via *pip* always offers you the last stable version of the package.\n```\npip install pycopula\n```\nHowever, if you are looking for latest updates, consider installation directly from sources.\n```\ngit clone https://github.com/MaximeJumelle/pycopula.git\ncd pycopula\npython setup.py install\n```\n\n## Features\nPyCopula natively handle various families of copulas including :\n- Archimean Copulas\n\t- Clayton\n\t- Gumbel\n\t- Joe\n\t- Frank\n\t- Ali-Mikhail-Haq\n- Elliptic Copulas\n\t- Gaussian\n\t- Student\n\n### Estimation\nThree methods of estimation, based on *SciPy* numerical optimization routines, are available to provide high flexibility during fitting process.\n- Moments estimation on particular copulas\n- Maximum Likelihood Estimation (MLE)\n- Inference For Margins (IFM)\n- Canonical Maximum Likelihood Estimation (CMLE)\n\n## Usage\nPyCopula was designed to provide an easy-to-use interface that does not require a lot in both programming and computing. As a result, only a few lines are needed to properly fit any copulas, as demonstrated in the following code snippet.\n```python\nimport pandas as pd\nfrom pycopula.copula import ArchimedeanCopula\n\ndata = pd.read_csv(\"data/classic.csv\").values[:,1:]\n\narchimedean = ArchimedeanCopula(family=\"gumbel\", dim=2)\narchimedean.fit(data, method=\"cmle\")\n```\n```console\nArchimedean Copula (gumbel) :\n*\tParameter : 1.605037\n```\n\n## Visualization\n\n#### 3D PDF and CDF\n\n![Screenshot](https://github.com/MaximeJumelle/pycopula/blob/master/resources/gaussian_pdf_cdf.png?raw=true)\n\n#### Concentration Functions\n\n![Screenshot](https://raw.githubusercontent.com/MaximeJumelle/pycopula/master/resources/lower_upper_tail.png)\n\n#### Estimation\n\n#### Simulation\n\n![Screenshot](https://raw.githubusercontent.com/MaximeJumelle/pycopula/master/resources/simulation_gaussian.png)\n\n## Development\n\nCurrently, there are only a few features implemented in the library, which are the basics components for copula handling :\n\n- Creating Archimedean, Gaussian and Student copulas\n- 3D plot of PDF and CDF\n- Concentration functions and visualization\n- Estimation of copulas parameters (CMLE, MLE, IFM)\n\nIn the future, I plan to release the following features :\n\n- Goodness-of-fit\n- Copula selection with criterions and statistical testing\n- Examples of applications in real world with open data\n\nAlso, if you are interested in the project, I would be happy to collaborate with you since there are still quite a lot of improvements needed (computation, estimation methods, visualization) and that I don't have enough time on my hands to do it quickly.\n\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/MaximeJumelle/pycopula/", "keywords": "pycopula", "license": "Apache 2", "maintainer": "", "maintainer_email": "", "name": "pycopula", "package_url": "https://pypi.org/project/pycopula/", "platform": "", "project_url": "https://pypi.org/project/pycopula/", "project_urls": { "Homepage": "https://github.com/MaximeJumelle/pycopula/" }, "release_url": "https://pypi.org/project/pycopula/0.1.5/", "requires_dist": [ "numpy (>=1.13.3)", "scipy (>=1.0.0)" ], "requires_python": "", "summary": "Python copulas library for dependency modeling", "version": "0.1.5" }, "last_serial": 4467405, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "b4c9359c7d6ce250a783a03f1db85657", "sha256": "35838c823f5fc87e5fe6e2254688df4163ffad047c68a627706ab54d720dd951" }, "downloads": -1, "filename": "pycopula-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "b4c9359c7d6ce250a783a03f1db85657", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6674, "upload_time": "2018-11-06T14:08:11", "url": "https://files.pythonhosted.org/packages/b2/b2/940073a177ad647364695711f0eadd55b9408a672379382a912eb9085eca/pycopula-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f3c1820713016f62b98e0cca3808b706", "sha256": "733916d7412fca187b505494b8ee4b2a04b4b525445023822d94d829d558eedf" }, "downloads": -1, "filename": "pycopula-0.1.1.tar.gz", "has_sig": false, "md5_digest": "f3c1820713016f62b98e0cca3808b706", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2418, "upload_time": "2018-11-06T14:08:13", "url": "https://files.pythonhosted.org/packages/6f/f3/d6fb60976db12bf96bc789bcf3fdfb95ac152d09c03eb838a8614a15dd0c/pycopula-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "2163608f37d773d8a2d8309ee2da99bc", "sha256": "1d3170398bca731b4a776cd380e1f74d6b1be411d44c5bf84f1254ffbbf65158" }, "downloads": -1, "filename": "pycopula-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "2163608f37d773d8a2d8309ee2da99bc", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6721, "upload_time": "2018-11-06T14:19:44", "url": "https://files.pythonhosted.org/packages/38/fa/d9e62266aca4c0a7a993fdb24bf97ae51a927927d0e17b87bf56916afd1e/pycopula-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "40f1c882a35b2427dbdacb51d4a510b0", "sha256": "7d16acc14c54f02931da505ab1d745a4512a8de9a0a82be09115a5108652d0e6" }, "downloads": -1, "filename": "pycopula-0.1.2.tar.gz", "has_sig": false, "md5_digest": "40f1c882a35b2427dbdacb51d4a510b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2464, "upload_time": "2018-11-06T14:19:45", "url": "https://files.pythonhosted.org/packages/0f/33/ad12ca8fb6a1b17d0b37a28c6f3847a478889aff0ccc3c965282d52bb8c4/pycopula-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "5aace2d36f499f97ba463593b8e619d4", "sha256": "35823784ed96a5ff05c97d5defde29edd20d2d55490c6ce2aaedfcc047fc6845" }, "downloads": -1, "filename": "pycopula-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "5aace2d36f499f97ba463593b8e619d4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 6721, "upload_time": "2018-11-06T14:38:06", "url": "https://files.pythonhosted.org/packages/7a/20/b0badbffa10df4ce9b653ecb0bde9ec1f818701e47af38783390c75c95d4/pycopula-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "dd6011e08e58ffb4eaa10bd4f15c0d4a", "sha256": "3e08dc895995836838bafb024ef0a2b347d1577f4d334266ced9199eba60517c" }, "downloads": -1, "filename": "pycopula-0.1.3.tar.gz", "has_sig": false, "md5_digest": "dd6011e08e58ffb4eaa10bd4f15c0d4a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 2499, "upload_time": "2018-11-06T14:38:07", "url": "https://files.pythonhosted.org/packages/51/40/59c2e23ef9c6246a5f8d942bd3d41edad1348ff3944a9ff2477a8d7de778/pycopula-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "455e28bb5b658dde81644789a6525bb4", "sha256": "2a7a1997b4b23d16a0d9bf52581a07e55b45d21d58c85ff2e812fbe12534b1b9" }, "downloads": -1, "filename": "pycopula-0.1.4-py3-none-any.whl", "has_sig": false, "md5_digest": "455e28bb5b658dde81644789a6525bb4", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 20574, "upload_time": "2018-11-06T14:51:11", "url": "https://files.pythonhosted.org/packages/85/8d/364615743a9b8148111bb8d7e9e83c5ee022065569d511ecab8005dad7cc/pycopula-0.1.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9d6147e2eb0fcb001ca746f32b1ed5df", "sha256": "04b4b23f0132a925a789c1273536a7964ecb074138e1d29984ee579d7590e8b7" }, "downloads": -1, "filename": "pycopula-0.1.4.tar.gz", "has_sig": false, "md5_digest": "9d6147e2eb0fcb001ca746f32b1ed5df", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14452, "upload_time": "2018-11-06T14:51:12", "url": "https://files.pythonhosted.org/packages/e1/b7/8a0f100a66ad22e4ed3a208b5aa03d00a90a1757e2bcefd56cc078342456/pycopula-0.1.4.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "9eb874bf52282d4729b2e9bcfdd0e201", "sha256": "68fad62f254707aae037d34832785f7322272aa193e5ccc7318a1aa3ad714e6a" }, "downloads": -1, "filename": "pycopula-0.1.5.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "9eb874bf52282d4729b2e9bcfdd0e201", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34288, "upload_time": "2018-11-08T22:39:20", "url": "https://files.pythonhosted.org/packages/ad/85/f8539e7338592522f8a5bef9b89a2cde009c93b4f38959d7e1d23635e70d/pycopula-0.1.5.linux-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "a675c0976ea0bef38b37a4a956fb6b6e", "sha256": "2270c82e4198597acd36cc17b2e4b4e70ba03c3055cb98c1bd0ddf8e47157f9d" }, "downloads": -1, "filename": "pycopula-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a675c0976ea0bef38b37a4a956fb6b6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21815, "upload_time": "2018-11-08T22:39:18", "url": "https://files.pythonhosted.org/packages/96/5b/e275588c5aad08daa1a85517c3500b0ab20a948a2a3495300c1366ce5c3f/pycopula-0.1.5-py3-none-any.whl" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "9eb874bf52282d4729b2e9bcfdd0e201", "sha256": "68fad62f254707aae037d34832785f7322272aa193e5ccc7318a1aa3ad714e6a" }, "downloads": -1, "filename": "pycopula-0.1.5.linux-x86_64.tar.gz", "has_sig": false, "md5_digest": "9eb874bf52282d4729b2e9bcfdd0e201", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34288, "upload_time": "2018-11-08T22:39:20", "url": "https://files.pythonhosted.org/packages/ad/85/f8539e7338592522f8a5bef9b89a2cde009c93b4f38959d7e1d23635e70d/pycopula-0.1.5.linux-x86_64.tar.gz" }, { "comment_text": "", "digests": { "md5": "a675c0976ea0bef38b37a4a956fb6b6e", "sha256": "2270c82e4198597acd36cc17b2e4b4e70ba03c3055cb98c1bd0ddf8e47157f9d" }, "downloads": -1, "filename": "pycopula-0.1.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a675c0976ea0bef38b37a4a956fb6b6e", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 21815, "upload_time": "2018-11-08T22:39:18", "url": "https://files.pythonhosted.org/packages/96/5b/e275588c5aad08daa1a85517c3500b0ab20a948a2a3495300c1366ce5c3f/pycopula-0.1.5-py3-none-any.whl" } ] }