# TimeAwarePC: A Python Package for Finding Causal Connectivity from Time Series Data [](https://pypi.python.org/pypi/timeawarepc) [](https://timeawarepc.readthedocs.io/en/latest/?badge=latest)
**TimeAwarePC** is a Python package that implements the Time-Aware PC Algorithm for finding the **Causal Functional Connectivity** from time series data, based on recent research in directed probabilistic graphical modeling with time series [[1]](#Citation). The package also includes implementations of Granger Causality and the PC algorithm.
<div align="center">
<a href="https://github.com/shlizee/TimeAwarePC"><img src="https://github.com/shlizee/TimeAwarePC/blob/main/imgs/Schematic-msgs.png?raw=true" width="500px" height="250px"></a>
</div>
## Installation
You can get the latest version of TimeAwarePC as follows.
```
$ pip install timeawarepc
```
## Requirements
- Python >=3.6
- Python packages automatically checked and installed as part of the setup. To use Granger Causality, additional dependency of ```nitime``` which can be installed by ```pip install nitime```.
- R >=4.0
- R package ```kpcalg``` and its dependencies. They can be installed in R or RStudio as follows:
```
> install.packages("BiocManager")
> BiocManager::install("graph")
> BiocManager::install("RBGL")
> install.packages("pcalg")
> install.packages("kpcalg")
```
<!-- - In addition, if you like to use Granger Causality functions in this package, please separately install nitime as follows:
```
pip install nitime
``` -->
## Documentation
[Documentation is available at readthedocs.org](https://timeawarepc.readthedocs.io/en/latest/)
## Tutorial
See the [Quick Start Guide](https://timeawarepc.readthedocs.io/en/latest/gettingstarted.html) for a quick tutorial of the main functionalities of this library and check if it is installed properly.
<!--
## Documentation
[Documentation is available at readthedocs.org](https://timeaware-pc.readthedocs.io/en/latest/) -->
## Contributing
Your help is absolutely welcome! Please do reach out or create a feature branch!
## Citation
Biswas, R., & Shlizerman, E. (2022). Statistical Perspective on Functional and Causal Neural Connectomics: The Time-Aware PC Algorithm. https://arxiv.org/abs/2204.04845
Biswas, R., & Shlizerman, E. (2021). Statistical Perspective on Functional and Causal Neural Connectomics: A Comparative Study. Frontiers in Systems Neuroscience. https://doi.org/10.3389/fnsys.2022.817962
## References
R Clay Reid. (2012) From functional architecture to functional connectomics. Neuron, 75(2):209–217.
Smith, S. M., Miller, K. L., Salimi-Khorshidi, G., Webster, M., Beckmann, C. F., Nichols, T. E., ... & Woolrich, M. W. (2011). Network modelling methods for FMRI. Neuroimage, 54(2), 875-891.
Judea Pearl. (2009) Causality. Cambridge University press.
Markus Kalisch and Peter Bhlmann. (2007) Estimating high-dimensional directed acyclic graphs with the pc-algorithm. In The Journal of Machine Learning Research, Vol. 8, pp. 613-636.
Peter Spirtes, Clark N Glymour, Richard Scheines, and David Heckerman. (2000) Causation, prediction, and search. MIT press.
Raw data
{
"_id": null,
"home_page": "https://github.com/shlizee/TimeAwarePC",
"name": "timeawarepc",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/19/57/a158838b87b876a9bb9f5cc1fa8423eb1575bf8a9257b60f62e94ae9a83f/timeawarepc-1.1.0.tar.gz",
"platform": null,
"description": "# TimeAwarePC: A Python Package for Finding Causal Connectivity from Time Series Data [](https://pypi.python.org/pypi/timeawarepc) [](https://timeawarepc.readthedocs.io/en/latest/?badge=latest)\r\n**TimeAwarePC** is a Python package that implements the Time-Aware PC Algorithm for finding the **Causal Functional Connectivity** from time series data, based on recent research in directed probabilistic graphical modeling with time series [[1]](#Citation). The package also includes implementations of Granger Causality and the PC algorithm.\r\n\r\n<div align=\"center\">\r\n <a href=\"https://github.com/shlizee/TimeAwarePC\"><img src=\"https://github.com/shlizee/TimeAwarePC/blob/main/imgs/Schematic-msgs.png?raw=true\" width=\"500px\" height=\"250px\"></a>\r\n</div>\r\n\r\n## Installation\r\n\r\nYou can get the latest version of TimeAwarePC as follows.\r\n\r\n```\r\n$ pip install timeawarepc\r\n```\r\n\r\n## Requirements\r\n- Python >=3.6\r\n- Python packages automatically checked and installed as part of the setup. To use Granger Causality, additional dependency of ```nitime``` which can be installed by ```pip install nitime```.\r\n- R >=4.0\r\n- R package ```kpcalg``` and its dependencies. They can be installed in R or RStudio as follows:\r\n```\r\n> install.packages(\"BiocManager\")\r\n> BiocManager::install(\"graph\")\r\n> BiocManager::install(\"RBGL\")\r\n> install.packages(\"pcalg\")\r\n> install.packages(\"kpcalg\")\r\n```\r\n<!-- - In addition, if you like to use Granger Causality functions in this package, please separately install nitime as follows:\r\n```\r\npip install nitime\r\n``` -->\r\n\r\n## Documentation\r\n\r\n[Documentation is available at readthedocs.org](https://timeawarepc.readthedocs.io/en/latest/)\r\n\r\n## Tutorial\r\n\r\nSee the [Quick Start Guide](https://timeawarepc.readthedocs.io/en/latest/gettingstarted.html) for a quick tutorial of the main functionalities of this library and check if it is installed properly. \r\n<!-- \r\n## Documentation\r\n\r\n[Documentation is available at readthedocs.org](https://timeaware-pc.readthedocs.io/en/latest/) -->\r\n\r\n## Contributing\r\n\r\nYour help is absolutely welcome! Please do reach out or create a feature branch!\r\n\r\n## Citation\r\n\r\nBiswas, R., & Shlizerman, E. (2022). Statistical Perspective on Functional and Causal Neural Connectomics: The Time-Aware PC Algorithm. https://arxiv.org/abs/2204.04845\r\n\r\nBiswas, R., & Shlizerman, E. (2021). Statistical Perspective on Functional and Causal Neural Connectomics: A Comparative Study. Frontiers in Systems Neuroscience. https://doi.org/10.3389/fnsys.2022.817962\r\n\r\n\r\n## References\r\n\r\nR Clay Reid. (2012) From functional architecture to functional connectomics. Neuron, 75(2):209\u00e2\u20ac\u201c217.\r\n\r\nSmith, S. M., Miller, K. L., Salimi-Khorshidi, G., Webster, M., Beckmann, C. F., Nichols, T. E., ... & Woolrich, M. W. (2011). Network modelling methods for FMRI. Neuroimage, 54(2), 875-891.\r\n\r\nJudea Pearl. (2009) Causality. Cambridge University press.\r\n\r\nMarkus Kalisch and Peter Bhlmann. (2007) Estimating high-dimensional directed acyclic graphs with the pc-algorithm. In The Journal of Machine Learning Research, Vol. 8, pp. 613-636.\r\n\r\nPeter Spirtes, Clark N Glymour, Richard Scheines, and David Heckerman. (2000) Causation, prediction, and search. MIT press.\r\n\r\n\r\n\r\n",
"bugtrack_url": null,
"license": "",
"summary": "Time-Aware PC Python Package",
"version": "1.1.0",
"project_urls": {
"Homepage": "https://github.com/shlizee/TimeAwarePC"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0528a6199e078ba573d57cf3b1cbf8f279eac5d7f5cde6435287eb6c8210774a",
"md5": "81ae7bf3c50b89e4f05ac7df6cd6ac89",
"sha256": "baed08e7659cbafa2d987542694218f1898cfa36a65f832976a6a87691816711"
},
"downloads": -1,
"filename": "timeawarepc-1.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "81ae7bf3c50b89e4f05ac7df6cd6ac89",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 14303,
"upload_time": "2023-11-14T20:21:18",
"upload_time_iso_8601": "2023-11-14T20:21:18.446601Z",
"url": "https://files.pythonhosted.org/packages/05/28/a6199e078ba573d57cf3b1cbf8f279eac5d7f5cde6435287eb6c8210774a/timeawarepc-1.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1957a158838b87b876a9bb9f5cc1fa8423eb1575bf8a9257b60f62e94ae9a83f",
"md5": "172509f375ea8a4a28be8b06b5c4b410",
"sha256": "71424bb3fd255d72aec27dc37547926caa889af1a493e68a19e6dc5755980fcb"
},
"downloads": -1,
"filename": "timeawarepc-1.1.0.tar.gz",
"has_sig": false,
"md5_digest": "172509f375ea8a4a28be8b06b5c4b410",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 21952957,
"upload_time": "2023-11-14T20:21:37",
"upload_time_iso_8601": "2023-11-14T20:21:37.232014Z",
"url": "https://files.pythonhosted.org/packages/19/57/a158838b87b876a9bb9f5cc1fa8423eb1575bf8a9257b60f62e94ae9a83f/timeawarepc-1.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-14 20:21:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "shlizee",
"github_project": "TimeAwarePC",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "numpy",
"specs": []
},
{
"name": "pandas",
"specs": []
},
{
"name": "scipy",
"specs": []
},
{
"name": "networkx",
"specs": []
},
{
"name": "rpy2",
"specs": []
}
],
"lcname": "timeawarepc"
}