<div align="center">
<br/>
<h1>ElecPhys</h1>
<br/>
<img src="https://img.shields.io/badge/Python-14354C?style=for-the-badge&logo=python&logoColor=white" alt="built with Python3" />
</div>
[![Documentation Status](https://readthedocs.org/projects/elecphys/badge/?version=latest)](https://elecphys.readthedocs.io) [![Ci testing](https://github.com/AminAlam/elecphys/actions/workflows/python-package.yml/badge.svg?branch=main)](https://github.com/AminAlam/elecphys)
----------
ElecPhys: A Python package for electrophysiology data analysis. It provides tools for data loading, analysis, conversion, preprocessing, and visualization.
----------
## Table of contents
* [Overview](https://github.com/AminAlam/ElecPhys#overview)
* [Installation](https://github.com/AminAlam/ElecPhys#ElecPhys)
* [Usage](https://github.com/AminAlam/ElecPhys#usage)
* [Documentation](https://github.com/AminAlam/ElecPhys#documentation)
----------
## Overview
<p align="justify">
ElecPhys is a Python package for electrophysiology data analysis. It provides tools for data loading, analysis, conversion, preprocessing, and visualization.. ElecPhys can convert .RHD fiels to .mat and .npz, and it can analyze the data in time and fourier domains. Please take a look at <a href="https://github.com/AminAlam/ElecPhys/docs/available_analysis.md">here</a> for the complete list of available tools.
</p>
----------
## Installation
### Source code
- Clone the repository or download the source code.
- cd into the repository directory.
- Run `python3 setup.py install`
### PyPi
Run `pip3 install elecphys` or `pip install elecphys`
## Usage
It's possible to use ElecPhys as a command line tool or as a Python module.
### Command Line
To use ElecPhys from command line, you need to use the following pattern:
```console
➜ elecphys COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]
```
Where each COMMNAD can be one of the supported commands such as convert_rhd_to_mat, plot_stft, and ... .
To learn more about the commnads, you can use the following command:
```console
➜ elecphys --help
Usage: main.py [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...
ElecPhys is a Python package for electrophysiology data analysis. It
provides tools for data loading, conversion, preprocessing, and
visualization.
Options:
-v, --verbose Verbose mode
-d, --debug Debug mode
--help Show this message and exit.
Commands:
convert_mat_to_npz Converts MAT files to NPZ files using MAT...
convert_rhd_to_mat Converts RHD files to mat files using RHD...
dft_numeric_output_from_npz Computes DFT and saves results as NPZ files
freq_bands_power_over_time Computes signal's power in given...
frequncy_domain_filter Filtering in frequency domain using...
normalize_npz Normalizes NPZ files
pca_from_npz Computes PCA from NPZ files
plot_avg_stft Plots average STFT from NPZ files
plot_dft Plots DFT from NPZ file
plot_filter_freq_response Plots filter frequency response
plot_signal Plots signals from NPZ file
plot_stft Plots STFT from NPZ file
re_reference_npz re-references NPZ files and save them as...
stft_numeric_output_from_npz Computes STFT and saves results as NPZ files
zscore_normalize_npz Z-score normalizes NPZ files
```
### Python module
You need to import ElecPhys and use it's modules inside your python code. For example:
```python
import elecphys
# Path to folder containing RHD files
folder_path = "data/rhd_files"
# Path to the output .mat file
output_mat_file = "output.mat"
# Down sample factor
ds_factor = 5
# call rhd to mat conversoin module
elecphys.conversion.convert_rhd_to_mat(folder_path, output_mat_file, ds_factor)
```
## Documentation
Please check [this link](https://elecphys.readthedocs.io/en/stable/) for full documentation
Raw data
{
"_id": null,
"home_page": "https://github.com/AminAlam/ElecPhys",
"name": "ElecPhys",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "EEG, signal-processing, electrophysiology, data-analysis, data-visualization, data-conversion, data-preprocessing, data-loading, rhd, notch-filter, dft, stft, fourier-transform",
"author": "Amin Alam",
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/67/1d/38a709db35f51fd65b1a7c1fa0ef8bac4233b127960500cce89a209c3d2e/elecphys-0.0.57.tar.gz",
"platform": null,
"description": "\n<div align=\"center\">\n <br/>\n<h1>ElecPhys</h1>\n \n<br/>\n<img src=\"https://img.shields.io/badge/Python-14354C?style=for-the-badge&logo=python&logoColor=white\" alt=\"built with Python3\" />\n</div>\n\n[![Documentation Status](https://readthedocs.org/projects/elecphys/badge/?version=latest)](https://elecphys.readthedocs.io) [![Ci testing](https://github.com/AminAlam/elecphys/actions/workflows/python-package.yml/badge.svg?branch=main)](https://github.com/AminAlam/elecphys)\n\n\n----------\n\nElecPhys: A Python package for electrophysiology data analysis. It provides tools for data loading, analysis, conversion, preprocessing, and visualization.\n\n\n----------\n## Table of contents\t\t\t\n * [Overview](https://github.com/AminAlam/ElecPhys#overview)\n * [Installation](https://github.com/AminAlam/ElecPhys#ElecPhys)\n * [Usage](https://github.com/AminAlam/ElecPhys#usage)\n * [Documentation](https://github.com/AminAlam/ElecPhys#documentation)\n----------\n## Overview\n<p align=\"justify\">\n ElecPhys is a Python package for electrophysiology data analysis. It provides tools for data loading, analysis, conversion, preprocessing, and visualization.. ElecPhys can convert .RHD fiels to .mat and .npz, and it can analyze the data in time and fourier domains. Please take a look at <a href=\"https://github.com/AminAlam/ElecPhys/docs/available_analysis.md\">here</a> for the complete list of available tools. \n</p>\n\n----------\n## Installation\n\n### Source code\n- Clone the repository or download the source code.\n- cd into the repository directory.\n- Run `python3 setup.py install`\n\n### PyPi\nRun `pip3 install elecphys` or `pip install elecphys`\n\n## Usage\nIt's possible to use ElecPhys as a command line tool or as a Python module.\n\n### Command Line\nTo use ElecPhys from command line, you need to use the following pattern:\n\n```console\n\u279c elecphys COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]\n```\nWhere each COMMNAD can be one of the supported commands such as convert_rhd_to_mat, plot_stft, and ... .\nTo learn more about the commnads, you can use the following command:\n```console\n\u279c elecphys --help\nUsage: main.py [OPTIONS] COMMAND1 [ARGS]... [COMMAND2 [ARGS]...]...\n\n ElecPhys is a Python package for electrophysiology data analysis. It\n provides tools for data loading, conversion, preprocessing, and\n visualization.\n\nOptions:\n -v, --verbose Verbose mode\n -d, --debug Debug mode\n --help Show this message and exit.\n\nCommands:\n convert_mat_to_npz Converts MAT files to NPZ files using MAT...\n convert_rhd_to_mat Converts RHD files to mat files using RHD...\n dft_numeric_output_from_npz Computes DFT and saves results as NPZ files\n freq_bands_power_over_time Computes signal's power in given...\n frequncy_domain_filter Filtering in frequency domain using...\n normalize_npz Normalizes NPZ files\n pca_from_npz Computes PCA from NPZ files\n plot_avg_stft Plots average STFT from NPZ files\n plot_dft Plots DFT from NPZ file\n plot_filter_freq_response Plots filter frequency response\n plot_signal Plots signals from NPZ file\n plot_stft Plots STFT from NPZ file\n re_reference_npz re-references NPZ files and save them as...\n stft_numeric_output_from_npz Computes STFT and saves results as NPZ files\n zscore_normalize_npz Z-score normalizes NPZ files\n```\n\n### Python module\n\nYou need to import ElecPhys and use it's modules inside your python code. For example:\n\n```python\nimport elecphys\n\n# Path to folder containing RHD files\nfolder_path = \"data/rhd_files\"\n# Path to the output .mat file\noutput_mat_file = \"output.mat\"\n# Down sample factor\nds_factor = 5\n# call rhd to mat conversoin module\nelecphys.conversion.convert_rhd_to_mat(folder_path, output_mat_file, ds_factor)\n```\n## Documentation\nPlease check [this link](https://elecphys.readthedocs.io/en/stable/) for full documentation\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Electrophysiology data processing",
"version": "0.0.57",
"project_urls": {
"Homepage": "https://github.com/AminAlam/ElecPhys"
},
"split_keywords": [
"eeg",
" signal-processing",
" electrophysiology",
" data-analysis",
" data-visualization",
" data-conversion",
" data-preprocessing",
" data-loading",
" rhd",
" notch-filter",
" dft",
" stft",
" fourier-transform"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "82dda9037902eb07d4d2431ed9f532f2815c044eb535bae25b66c02e4a8f4f77",
"md5": "009640c0dfd9a56e8b2d4cee98618cbd",
"sha256": "d0e44921dc0e2377617122016b4cef89e795422af62bdf8bfb6992433933b2e2"
},
"downloads": -1,
"filename": "ElecPhys-0.0.57-py3-none-any.whl",
"has_sig": false,
"md5_digest": "009640c0dfd9a56e8b2d4cee98618cbd",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.8",
"size": 31695,
"upload_time": "2024-05-22T18:44:13",
"upload_time_iso_8601": "2024-05-22T18:44:13.759718Z",
"url": "https://files.pythonhosted.org/packages/82/dd/a9037902eb07d4d2431ed9f532f2815c044eb535bae25b66c02e4a8f4f77/ElecPhys-0.0.57-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "671d38a709db35f51fd65b1a7c1fa0ef8bac4233b127960500cce89a209c3d2e",
"md5": "438fb54903ac13c573fad974b8da1ec6",
"sha256": "ef2a42c1c46db638d4eee339d387fba4eb8bc07ee74b7bc24e57b2a2b446528c"
},
"downloads": -1,
"filename": "elecphys-0.0.57.tar.gz",
"has_sig": false,
"md5_digest": "438fb54903ac13c573fad974b8da1ec6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 28176,
"upload_time": "2024-05-22T18:44:15",
"upload_time_iso_8601": "2024-05-22T18:44:15.427690Z",
"url": "https://files.pythonhosted.org/packages/67/1d/38a709db35f51fd65b1a7c1fa0ef8bac4233b127960500cce89a209c3d2e/elecphys-0.0.57.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-05-22 18:44:15",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "AminAlam",
"github_project": "ElecPhys",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "click",
"specs": []
},
{
"name": "mat73",
"specs": []
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "scipy",
"specs": []
},
{
"name": "tqdm",
"specs": []
},
{
"name": "pandas",
"specs": []
}
],
"lcname": "elecphys"
}