A python package for modeling, persisting and visualizing causal graphs embedded in knowledge graphs.
Project description
causalgraph
A python package for modeling, persisting and visualizing causal graphs embedded in knowledge graphs.
GitHub Repository
·
Contact us
Table of contents
About the project
causalgraph - modeling and saving causal graphs embedded in knowledge graphs. The package has been designed to provide an interface between causal disciplines such as causal discovery and causal inference. With this package, users can create and save causal graphs and export the generated graphs for use in other graph-based packages. The main advantage of the proposed package is its ability to facilitate the linking of additional information and metadata to causal structures. In addition, the package offers a variety of functions for graph modeling and plotting, such as editing, adding, and deleting nodes and edges. It is also compatible with widely used graph data science libraries such as NetworkX and Tigramite and incorporates a specially developed causalgraph ontology in the background.
Getting started
You can either use the causalgraph source code directly, or install the python package using pip.
Using pip
Just install causalgraph via pip running the following command:
pip install causalgraph
Local source code
- Clone the repo
git clone https://github.com/causalgraph/causalgraph.git
- Create conda environment
conda env create -f environment.yml conda activate causalgraph
- Ready to use causalgraph
import causalgraph
Usage
Please have a look at the examples within the GitHub Repo . Here you can find some Jupyter notebooks in which the most important functions are presented. You can also take a look at the causalgraph paper. It is referenced in the end of this README.
Contributing
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the GitHub repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
License
Distributed under the MIT License.
Contact
- Mail: causalgraph@iwu.fraunhofer.de
- Blog: https://www.kognitive-produktion.de/?p=3154
- Project Link: https://github.com/causalgraph
Similar projects
- owlready2 - Makes Ontologies and Knowledge Graphs workable in python. Is used for storing information
- networkX - Represent graphs in python; is used as inspiration for the Calls and structure of the project
- Causal Graphical Models Python Package - Major inspiration for this package, but we want to do these things differently:
- Represent Nodes and Edges as individual objects, establishing the connection to datasources / models
- usage of networkX MultiDiGraph as base for the SCMs to support multiple connections (at different times) between nodes
- Causal Inference in Statistics - Python Code accompanying a book, which also implements SCMs (without Time-Series)
Acknowledgments
The development of causalgraph is part of the research project KausaLAssist. It is funded by the German Federal Ministry of Education and Research (BMBF) within the "Future of Value Creation - Research on Production, Services and Work" program (funding number 02P20A150) and managed by the Project Management Agency Karlsruhe (PTKA). The authors are responsible for the content of this publication.
Citing this project
If you find causalgraph useful for your research, please cite us as follows:
Sven Pieper, Carl Willy Mehling, Dominik Hirsch, Tobias Lüke, Steffen Ihlenfeldt. causalgraph: A Python Package for Modeling, Persisting and Visualizing Causal Graphs Embedded in Knowledge Graphs. 2023. https://arxiv.org/abs/2301.08490
DOI: 10.48550/arXiv.2301.08490
Bibtex:
@misc{
doi = {10.48550/ARXIV.2301.08490},
url = {https://arxiv.org/abs/2301.08490},
author = {Pieper, Sven and Mehling, Carl Willy and Hirsch, Dominik and Lüke, Tobias and Ihlenfeldt, Steffen},
keywords = {Artificial Intelligence (cs.AI), FOS: Computer and information sciences, FOS: Computer and information sciences, E.1; E.2},
title = {causalgraph: A Python Package for Modeling, Persisting and Visualizing Causal Graphs Embedded in Knowledge Graphs},
publisher = {arXiv},
year = {2023}
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file causalgraph-0.1.1.tar.gz
.
File metadata
- Download URL: causalgraph-0.1.1.tar.gz
- Upload date:
- Size: 44.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4b4aa54cd1fdc879b41ccf375dd084fcd93cf8a41ac4e51a5c2b936857ecd956 |
|
MD5 | 25bab04d4384a9141935b1013c264e2a |
|
BLAKE2b-256 | 891924c572ab1f57a6f0fcd255b29e1fbfc12ea6496d8bf301e1a351cc9ba472 |
File details
Details for the file causalgraph-0.1.1-py3-none-any.whl
.
File metadata
- Download URL: causalgraph-0.1.1-py3-none-any.whl
- Upload date:
- Size: 44.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.12.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e3fd62b0eed9b8ae3c802069b2583dedd96293b2a0053c62809c19906aec2c76 |
|
MD5 | f889c97a64078571b49f91e5c36fda44 |
|
BLAKE2b-256 | 09220a6ef8087a50197b15db8018d790e10a4785437ae5d71aeec3373e397663 |