pm4py


Namepm4py JSON
Version 2.7.11.10 PyPI version JSON
download
home_pagehttps://pm4py.fit.fraunhofer.de
SummaryProcess mining for Python
upload_time2024-05-27 05:49:46
maintainerNone
docs_urlNone
authorFraunhofer Institute for Applied Information Technology FIT
requires_pythonNone
licenseGPL 3.0
keywords
VCS
bugtrack_url
requirements numpy pandas deprecation networkx graphviz wheel setuptools intervaltree lxml matplotlib pydotplus pytz scipy tqdm cvxopt
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # pm4py
pm4py is a python library that supports (state-of-the-art) process mining algorithms in python. 
It is open source (licensed under GPL) and intended to be used in both academia and industry projects.
pm4py is a product of the Fraunhofer Institute for Applied Information Technology.

## Documentation / API
The full documentation of pm4py can be found at https://pm4py.fit.fraunhofer.de

## First Example
A very simple example, to whet your appetite:

import pm4py

if __name__ == "__main__":
    log = pm4py.read_xes('<path-to-xes-log-file.xes>')
    net, initial_marking, final_marking = pm4py.discover_petri_net_inductive(log)
    pm4py.view_petri_net(net, initial_marking, final_marking, format="svg")

## Installation
pm4py can be installed on Python 3.9.x / 3.10.x / 3.11.x / 3.12.x by invoking:
*pip install -U pm4py*

pm4py is also running on older Python environments with different requirements sets, including:
- Python 3.8 (3.8.10): third_party/old_python_deps/requirements_py38.txt

## Requirements
pm4py depends on some other Python packages, with different levels of importance:
* *Essential requirements*: numpy, pandas, deprecation, networkx
* *Normal requirements* (installed by default with the pm4py package, important for mainstream usage): graphviz, intervaltree, lxml, matplotlib, pydotplus, pytz, scipy, tqdm
* *Optional requirements* (not installed by default): requests, pyvis, jsonschema, workalendar, pyarrow, scikit-learn, polars, openai, pyemd, pyaudio, pydub, pygame, pywin32, pygetwindow, pynput

## Release Notes
To track the incremental updates, please refer to the *CHANGELOG* file.

## Third Party Dependencies
As scientific library in the Python ecosystem, we rely on external libraries to offer our features.
In the */third_party* folder, we list all the licenses of our direct dependencies.
Please check the */third_party/LICENSES_TRANSITIVE* file to get a full list of all transitive dependencies and the corresponding license.

## Citing pm4py
If you are using pm4py in your scientific work, please cite pm4py as follows:

**Alessandro Berti, Sebastiaan van Zelst, Daniel Schuster**. (2023). *PM4Py: A process mining library for Python*. Software Impacts, 17, 100556. [DOI](https://doi.org/10.1016/j.simpa.2023.100556) | [Article Link](https://www.sciencedirect.com/science/article/pii/S2665963823000933)

BiBTeX:

@article{pm4py,  
title = {PM4Py: A process mining library for Python},  
journal = {Software Impacts},  
volume = {17},  
pages = {100556},  
year = {2023},  
issn = {2665-9638},  
doi = {https://doi.org/10.1016/j.simpa.2023.100556},  
url = {https://www.sciencedirect.com/science/article/pii/S2665963823000933},  
author = {Alessandro Berti and Sebastiaan van Zelst and Daniel Schuster},  
}



            

Raw data

            {
    "_id": null,
    "home_page": "https://pm4py.fit.fraunhofer.de",
    "name": "pm4py",
    "maintainer": null,
    "docs_url": null,
    "requires_python": null,
    "maintainer_email": null,
    "keywords": null,
    "author": "Fraunhofer Institute for Applied Information Technology FIT",
    "author_email": "pm4py@fit.fraunhofer.de",
    "download_url": "https://files.pythonhosted.org/packages/c6/2a/cea70ed142b92910e88bd970a090e5a9b5ee606b3db0c9bf1e5d6a487e23/pm4py-2.7.11.10.tar.gz",
    "platform": null,
    "description": "# pm4py\r\npm4py is a python library that supports (state-of-the-art) process mining algorithms in python. \r\nIt is open source (licensed under GPL) and intended to be used in both academia and industry projects.\r\npm4py is a product of the Fraunhofer Institute for Applied Information Technology.\r\n\r\n## Documentation / API\r\nThe full documentation of pm4py can be found at https://pm4py.fit.fraunhofer.de\r\n\r\n## First Example\r\nA very simple example, to whet your appetite:\r\n\r\nimport pm4py\r\n\r\nif __name__ == \"__main__\":\r\n    log = pm4py.read_xes('<path-to-xes-log-file.xes>')\r\n    net, initial_marking, final_marking = pm4py.discover_petri_net_inductive(log)\r\n    pm4py.view_petri_net(net, initial_marking, final_marking, format=\"svg\")\r\n\r\n## Installation\r\npm4py can be installed on Python 3.9.x / 3.10.x / 3.11.x / 3.12.x by invoking:\r\n*pip install -U pm4py*\r\n\r\npm4py is also running on older Python environments with different requirements sets, including:\r\n- Python 3.8 (3.8.10): third_party/old_python_deps/requirements_py38.txt\r\n\r\n## Requirements\r\npm4py depends on some other Python packages, with different levels of importance:\r\n* *Essential requirements*: numpy, pandas, deprecation, networkx\r\n* *Normal requirements* (installed by default with the pm4py package, important for mainstream usage): graphviz, intervaltree, lxml, matplotlib, pydotplus, pytz, scipy, tqdm\r\n* *Optional requirements* (not installed by default): requests, pyvis, jsonschema, workalendar, pyarrow, scikit-learn, polars, openai, pyemd, pyaudio, pydub, pygame, pywin32, pygetwindow, pynput\r\n\r\n## Release Notes\r\nTo track the incremental updates, please refer to the *CHANGELOG* file.\r\n\r\n## Third Party Dependencies\r\nAs scientific library in the Python ecosystem, we rely on external libraries to offer our features.\r\nIn the */third_party* folder, we list all the licenses of our direct dependencies.\r\nPlease check the */third_party/LICENSES_TRANSITIVE* file to get a full list of all transitive dependencies and the corresponding license.\r\n\r\n## Citing pm4py\r\nIf you are using pm4py in your scientific work, please cite pm4py as follows:\r\n\r\n**Alessandro Berti, Sebastiaan van Zelst, Daniel Schuster**. (2023). *PM4Py: A process mining library for Python*. Software Impacts, 17, 100556. [DOI](https://doi.org/10.1016/j.simpa.2023.100556) | [Article Link](https://www.sciencedirect.com/science/article/pii/S2665963823000933)\r\n\r\nBiBTeX:\r\n\r\n@article{pm4py,  \r\ntitle = {PM4Py: A process mining library for Python},  \r\njournal = {Software Impacts},  \r\nvolume = {17},  \r\npages = {100556},  \r\nyear = {2023},  \r\nissn = {2665-9638},  \r\ndoi = {https://doi.org/10.1016/j.simpa.2023.100556},  \r\nurl = {https://www.sciencedirect.com/science/article/pii/S2665963823000933},  \r\nauthor = {Alessandro Berti and Sebastiaan van Zelst and Daniel Schuster},  \r\n}\r\n\r\n\r\n",
    "bugtrack_url": null,
    "license": "GPL 3.0",
    "summary": "Process mining for Python",
    "version": "2.7.11.10",
    "project_urls": {
        "Documentation": "https://pm4py.fit.fraunhofer.de",
        "Homepage": "https://pm4py.fit.fraunhofer.de",
        "Source": "https://github.com/pm4py/pm4py-source",
        "Tracker": "https://github.com/pm4py/pm4py-source/issues"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "87724a99c018f174310e9cb892262538bf8ea1244cf727caaaa44b901c1a97c4",
                "md5": "3395687fcf4881862eb7822adb915f77",
                "sha256": "e57b82ca8dbe4e03ee83441d2f3dd9d6b1bf77b7bf896fbd09dd08a30a62cf79"
            },
            "downloads": -1,
            "filename": "pm4py-2.7.11.10-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "3395687fcf4881862eb7822adb915f77",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 1871989,
            "upload_time": "2024-05-27T05:49:42",
            "upload_time_iso_8601": "2024-05-27T05:49:42.451651Z",
            "url": "https://files.pythonhosted.org/packages/87/72/4a99c018f174310e9cb892262538bf8ea1244cf727caaaa44b901c1a97c4/pm4py-2.7.11.10-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c62acea70ed142b92910e88bd970a090e5a9b5ee606b3db0c9bf1e5d6a487e23",
                "md5": "67ee8c51a6f4f87cb184eb48213a316c",
                "sha256": "c94fc8e6b293b7a909fe1f8f8e0b30d155a1444a3d71e98dcfe6e38b057dbf7a"
            },
            "downloads": -1,
            "filename": "pm4py-2.7.11.10.tar.gz",
            "has_sig": false,
            "md5_digest": "67ee8c51a6f4f87cb184eb48213a316c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 790912,
            "upload_time": "2024-05-27T05:49:46",
            "upload_time_iso_8601": "2024-05-27T05:49:46.842889Z",
            "url": "https://files.pythonhosted.org/packages/c6/2a/cea70ed142b92910e88bd970a090e5a9b5ee606b3db0c9bf1e5d6a487e23/pm4py-2.7.11.10.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-05-27 05:49:46",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "pm4py",
    "github_project": "pm4py-source",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "numpy",
            "specs": [
                [
                    "<",
                    "2"
                ]
            ]
        },
        {
            "name": "pandas",
            "specs": []
        },
        {
            "name": "deprecation",
            "specs": []
        },
        {
            "name": "networkx",
            "specs": []
        },
        {
            "name": "graphviz",
            "specs": []
        },
        {
            "name": "wheel",
            "specs": []
        },
        {
            "name": "setuptools",
            "specs": []
        },
        {
            "name": "intervaltree",
            "specs": []
        },
        {
            "name": "lxml",
            "specs": []
        },
        {
            "name": "matplotlib",
            "specs": []
        },
        {
            "name": "pydotplus",
            "specs": []
        },
        {
            "name": "pytz",
            "specs": []
        },
        {
            "name": "scipy",
            "specs": []
        },
        {
            "name": "tqdm",
            "specs": []
        },
        {
            "name": "cvxopt",
            "specs": []
        }
    ],
    "lcname": "pm4py"
}
        
Elapsed time: 0.24860s