galvani
=======
<!---
SPDX-FileCopyrightText: 2013-2020 Christopher Kerr, Peter Attia
SPDX-License-Identifier: GPL-3.0-or-later
-->
Read proprietary file formats from electrochemical test stations.
# Usage
## Bio-Logic .mpr files
Use the `MPRfile` class from BioLogic.py (exported in the main package)
```python
from galvani import BioLogic
import pandas as pd
mpr_file = BioLogic.MPRfile('test.mpr')
df = pd.DataFrame(mpr_file.data)
```
## Arbin .res files
Use the `./galvani/res2sqlite.py` script to convert the .res file to a sqlite3 database with the same schema, which can then be interrogated with external tools or directly in Python.
For example, to extract the data into a pandas DataFrame (will need to be installed separately):
```python
import sqlite3
import pandas as pd
from galvani.res2sqlite import convert_arbin_to_sqlite
convert_arbin_to_sqlite("input.res", "output.sqlite")
with sqlite3.connect("output.sqlite") as db:
df = pd.read_sql(sql="select * from Channel_Normal_Table", con=db)
```
This functionality requires [MDBTools](https://github.com/mdbtools/mdbtools) to be installed on the local system.
# Installation
The latest galvani releases can be installed from [PyPI](https://pypi.org/project/galvani/) via
```shell
pip install galvani
```
The latest development version can be installed with `pip` directly from GitHub:
```shell
pip install git+https://github.com/echemdata/galvani
```
## Development installation and contributing
If you wish to contribute to galvani, please clone the repository and install the testing dependencies:
```shell
git clone git@github.com:echemdata/galvani
cd galvani
pip install -e .\[tests\]
```
Code can be contributed back via [GitHub pull requests](https://github.com/echemdata/galvani/pulls) and new features or bugs can be discussed in the [issue tracker](https://github.com/echemdata/galvani/issues).
Raw data
{
"_id": null,
"home_page": "https://github.com/echemdata/galvani",
"name": "galvani",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.6",
"maintainer_email": "",
"keywords": "",
"author": "Chris Kerr",
"author_email": "chris.kerr@mykolab.ch",
"download_url": "https://files.pythonhosted.org/packages/ca/aa/f02c8ff891778c579d304486ca269858500254d519618da04d639f2e0915/galvani-0.4.1.tar.gz",
"platform": null,
"description": "galvani\n=======\n\n<!---\nSPDX-FileCopyrightText: 2013-2020 Christopher Kerr, Peter Attia\n\nSPDX-License-Identifier: GPL-3.0-or-later\n-->\n\nRead proprietary file formats from electrochemical test stations.\n\n# Usage\n\n## Bio-Logic .mpr files\n\nUse the `MPRfile` class from BioLogic.py (exported in the main package)\n\n```python\nfrom galvani import BioLogic\nimport pandas as pd\n\nmpr_file = BioLogic.MPRfile('test.mpr')\ndf = pd.DataFrame(mpr_file.data)\n```\n\n## Arbin .res files\n\nUse the `./galvani/res2sqlite.py` script to convert the .res file to a sqlite3 database with the same schema, which can then be interrogated with external tools or directly in Python.\nFor example, to extract the data into a pandas DataFrame (will need to be installed separately):\n\n```python\nimport sqlite3\nimport pandas as pd\nfrom galvani.res2sqlite import convert_arbin_to_sqlite\nconvert_arbin_to_sqlite(\"input.res\", \"output.sqlite\")\nwith sqlite3.connect(\"output.sqlite\") as db:\n df = pd.read_sql(sql=\"select * from Channel_Normal_Table\", con=db)\n```\n\nThis functionality requires [MDBTools](https://github.com/mdbtools/mdbtools) to be installed on the local system.\n\n# Installation\n\nThe latest galvani releases can be installed from [PyPI](https://pypi.org/project/galvani/) via\n\n```shell\npip install galvani\n```\n\nThe latest development version can be installed with `pip` directly from GitHub:\n\n```shell\npip install git+https://github.com/echemdata/galvani\n```\n\n## Development installation and contributing \n\nIf you wish to contribute to galvani, please clone the repository and install the testing dependencies:\n\n```shell\ngit clone git@github.com:echemdata/galvani\ncd galvani\npip install -e .\\[tests\\]\n```\n\nCode can be contributed back via [GitHub pull requests](https://github.com/echemdata/galvani/pulls) and new features or bugs can be discussed in the [issue tracker](https://github.com/echemdata/galvani/issues).\n",
"bugtrack_url": null,
"license": "GPLv3+",
"summary": "Open and process battery charger log data files",
"version": "0.4.1",
"project_urls": {
"Homepage": "https://github.com/echemdata/galvani"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "7d7828fc617c325d289e7871209bd98ad647c2962a857b9e2b7ed8ecb9c39a64",
"md5": "9fb5b53271cacd9782e5717481e896b7",
"sha256": "ba568237194c394d5262367626e8555854fe69c1fa46e663a4481a73c6a3395f"
},
"downloads": -1,
"filename": "galvani-0.4.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "9fb5b53271cacd9782e5717481e896b7",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.6",
"size": 25544,
"upload_time": "2024-03-02T14:43:34",
"upload_time_iso_8601": "2024-03-02T14:43:34.620185Z",
"url": "https://files.pythonhosted.org/packages/7d/78/28fc617c325d289e7871209bd98ad647c2962a857b9e2b7ed8ecb9c39a64/galvani-0.4.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "caaaf02c8ff891778c579d304486ca269858500254d519618da04d639f2e0915",
"md5": "4189cf207024bf15ffcf146ae98a210b",
"sha256": "4f57b32c1dc615af362141fa6097dc98688b7378b74af8d70fa28a75e73a176f"
},
"downloads": -1,
"filename": "galvani-0.4.1.tar.gz",
"has_sig": false,
"md5_digest": "4189cf207024bf15ffcf146ae98a210b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.6",
"size": 5388162,
"upload_time": "2024-03-02T14:43:37",
"upload_time_iso_8601": "2024-03-02T14:43:37.137029Z",
"url": "https://files.pythonhosted.org/packages/ca/aa/f02c8ff891778c579d304486ca269858500254d519618da04d639f2e0915/galvani-0.4.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-02 14:43:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "echemdata",
"github_project": "galvani",
"travis_ci": true,
"coveralls": false,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "galvani"
}