pyEvalData


NamepyEvalData JSON
Version 1.6.0 PyPI version JSON
download
home_pagehttps://github.com/dschick/pyEvalData
SummaryPython module to evaluate experimental data
upload_time2023-12-27 21:03:34
maintainer
docs_urlNone
authorDaniel Schick
requires_python>=3.5
licenseMIT
keywords data evaluation analysis spec h5 nexus
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Welcome to pyEvalData

[![Documentation Status](https://readthedocs.org/projects/pyevaldata/badge/?version=latest)](https://pyevaldata.readthedocs.io/en/latest/?badge=latest)
![CI](https://github.com/dschick/pyEvalData/actions/workflows/main.yml/badge.svg)
![pypi](https://github.com/dschick/pyEvalData/actions/workflows/upload-to-pypi.yml/badge.svg)
[![codecov](https://codecov.io/gh/dschick/pyEvalData/branch/develop/graph/badge.svg?token=B73OXF4YRI)](https://codecov.io/gh/dschick/pyEvalData)

This is a Python module to read and evaluate experimental data. It can handle
raw data from different sources such as
[spec](https://certif.com/content/spec/),
[hdf5](https://www.hdfgroup.org/solutions/hdf5/),
[NeXus](https://www.nexusformat.org/) files which are common data formats at
synchrotrons, FELs, as well as in a growing number of laboratories. The
evaluation provides common functionalities such as binning, error calculation,
and advanced data manipulation via algebraic expressions as well as pre- and
post-data-filters. Furthermore, advanced wrapper functions allow for plotting
and fitting sequences of one or multiple scans in dependence of an external
parameter.

A minimal code example would look like this:

```python
import pyEvalData as ped
# define your data source
spec = ped.io.Spec(file_name='data.spec')
# initialize the evaluation
ev = ped.Evaluation(spec)
# define the x- and y-data
ev.xcol = 'motor1'
ev.clist = ['ct1', 'ct2', 'ct1/ct2']
# create a plot for scans 1-3
ev.plot_scans([1, 2, 3])
```

Please follow the [user guide](https://pyevaldata.readthedocs.io/en/latest/user_guide.html)
and [examples](https://pyevaldata.readthedocs.io/en/latest/examples.html) for
your first steps with `pyEvalData`.

## Features

- reading of several pre-defined raw data formats
  * [spec](https://certif.com/content/spec/)
  * [hdf5](https://www.hdfgroup.org/solutions/hdf5/)
  * [NeXus](https://www.nexusformat.org/)
  * user-defined text files
  * camera images (Dectris Pilatus, Princeton MTE, Greateyes, ...)
  * composite sources
- easy implementation of new raw-data formats using an `interface class`
- common methods for plotting and fitting of experimental data, including:
  * data binning
  * error calculation
  * data manipulation via algebraic expressions
  * common data pre- and post-filters

## Installation

You can either install directly from
[pypi.org](https://www.pypi.org/project/pyEvalData) using the command

    $ pip install pyEvalData

or if you want to work on the latest develop release you can clone 
`pyEvalData` from the main git repository:

    $ git clone https://github.com/dschick/pyEvalData.git pyEvalData

To work in editable mode (source is only linked 
but not copied to the python site-packages), just do:

    $ pip install -e ./pyEvalData

Or to do a normal install with

    $ pip install ./pyEvalData

Optionally, you can also let pip install directly from the repository: 

    $ pip install git+https://github.com/dschick/pyEvalData.git

You can have the following optional installations to enable unit tests, as well
as building the documentation:

    $ pip install pyEvalData[testing]
    $ pip install pyEvalData[documentation]

## Contribute & Support

If you are having issues please let us know via the
[issue tracker](https://github.com/dschick/pyEvalData/issues).

You can contribute to the project via pull-requests following the
[GitHub flow concept](https://docs.github.com/en/get-started/quickstart/github-flow).

## License

The project is licensed under the MIT license.



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/dschick/pyEvalData",
    "name": "pyEvalData",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.5",
    "maintainer_email": "",
    "keywords": "data evaluation analysis SPEC h5 NeXus",
    "author": "Daniel Schick",
    "author_email": "schick.daniel@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/0e/20/f83718467ee200a1c142a59b3e06147de47027a39c73b1075f6d416e2334/pyEvalData-1.6.0.tar.gz",
    "platform": null,
    "description": "# Welcome to pyEvalData\n\n[![Documentation Status](https://readthedocs.org/projects/pyevaldata/badge/?version=latest)](https://pyevaldata.readthedocs.io/en/latest/?badge=latest)\n![CI](https://github.com/dschick/pyEvalData/actions/workflows/main.yml/badge.svg)\n![pypi](https://github.com/dschick/pyEvalData/actions/workflows/upload-to-pypi.yml/badge.svg)\n[![codecov](https://codecov.io/gh/dschick/pyEvalData/branch/develop/graph/badge.svg?token=B73OXF4YRI)](https://codecov.io/gh/dschick/pyEvalData)\n\nThis is a Python module to read and evaluate experimental data. It can handle\nraw data from different sources such as\n[spec](https://certif.com/content/spec/),\n[hdf5](https://www.hdfgroup.org/solutions/hdf5/),\n[NeXus](https://www.nexusformat.org/) files which are common data formats at\nsynchrotrons, FELs, as well as in a growing number of laboratories. The\nevaluation provides common functionalities such as binning, error calculation,\nand advanced data manipulation via algebraic expressions as well as pre- and\npost-data-filters. Furthermore, advanced wrapper functions allow for plotting\nand fitting sequences of one or multiple scans in dependence of an external\nparameter.\n\nA minimal code example would look like this:\n\n```python\nimport pyEvalData as ped\n# define your data source\nspec = ped.io.Spec(file_name='data.spec')\n# initialize the evaluation\nev = ped.Evaluation(spec)\n# define the x- and y-data\nev.xcol = 'motor1'\nev.clist = ['ct1', 'ct2', 'ct1/ct2']\n# create a plot for scans 1-3\nev.plot_scans([1, 2, 3])\n```\n\nPlease follow the [user guide](https://pyevaldata.readthedocs.io/en/latest/user_guide.html)\nand [examples](https://pyevaldata.readthedocs.io/en/latest/examples.html) for\nyour first steps with `pyEvalData`.\n\n## Features\n\n- reading of several pre-defined raw data formats\n  * [spec](https://certif.com/content/spec/)\n  * [hdf5](https://www.hdfgroup.org/solutions/hdf5/)\n  * [NeXus](https://www.nexusformat.org/)\n  * user-defined text files\n  * camera images (Dectris Pilatus, Princeton MTE, Greateyes, ...)\n  * composite sources\n- easy implementation of new raw-data formats using an `interface class`\n- common methods for plotting and fitting of experimental data, including:\n  * data binning\n  * error calculation\n  * data manipulation via algebraic expressions\n  * common data pre- and post-filters\n\n## Installation\n\nYou can either install directly from\n[pypi.org](https://www.pypi.org/project/pyEvalData) using the command\n\n    $ pip install pyEvalData\n\nor if you want to work on the latest develop release you can clone \n`pyEvalData` from the main git repository:\n\n    $ git clone https://github.com/dschick/pyEvalData.git pyEvalData\n\nTo work in editable mode (source is only linked \nbut not copied to the python site-packages), just do:\n\n    $ pip install -e ./pyEvalData\n\nOr to do a normal install with\n\n    $ pip install ./pyEvalData\n\nOptionally, you can also let pip install directly from the repository: \n\n    $ pip install git+https://github.com/dschick/pyEvalData.git\n\nYou can have the following optional installations to enable unit tests, as well\nas building the documentation:\n\n    $ pip install pyEvalData[testing]\n    $ pip install pyEvalData[documentation]\n\n## Contribute & Support\n\nIf you are having issues please let us know via the\n[issue tracker](https://github.com/dschick/pyEvalData/issues).\n\nYou can contribute to the project via pull-requests following the\n[GitHub flow concept](https://docs.github.com/en/get-started/quickstart/github-flow).\n\n## License\n\nThe project is licensed under the MIT license.\n\n\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Python module to evaluate experimental data",
    "version": "1.6.0",
    "project_urls": {
        "Homepage": "https://github.com/dschick/pyEvalData"
    },
    "split_keywords": [
        "data",
        "evaluation",
        "analysis",
        "spec",
        "h5",
        "nexus"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "f4702d3f9d947c484f6f3ec8395ae0cfbd2ee7f432194960a4a1213fe45f7d40",
                "md5": "d60a6bc2f735609bfc78196084b19f59",
                "sha256": "a160037367c6cdc3de1ecc93afe670dae148b41773b29d30b60079de2f66ed25"
            },
            "downloads": -1,
            "filename": "pyEvalData-1.6.0-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "d60a6bc2f735609bfc78196084b19f59",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.5",
            "size": 36845,
            "upload_time": "2023-12-27T21:03:33",
            "upload_time_iso_8601": "2023-12-27T21:03:33.622753Z",
            "url": "https://files.pythonhosted.org/packages/f4/70/2d3f9d947c484f6f3ec8395ae0cfbd2ee7f432194960a4a1213fe45f7d40/pyEvalData-1.6.0-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0e20f83718467ee200a1c142a59b3e06147de47027a39c73b1075f6d416e2334",
                "md5": "a1a08e4c60d2f3cf0de6725f64cce4c9",
                "sha256": "15ef1714d2ed61ddffcc868ac1e63891bbed28ac8b919140c6f5b9e8e2f995b7"
            },
            "downloads": -1,
            "filename": "pyEvalData-1.6.0.tar.gz",
            "has_sig": false,
            "md5_digest": "a1a08e4c60d2f3cf0de6725f64cce4c9",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.5",
            "size": 27375,
            "upload_time": "2023-12-27T21:03:34",
            "upload_time_iso_8601": "2023-12-27T21:03:34.989506Z",
            "url": "https://files.pythonhosted.org/packages/0e/20/f83718467ee200a1c142a59b3e06147de47027a39c73b1075f6d416e2334/pyEvalData-1.6.0.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-12-27 21:03:34",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "dschick",
    "github_project": "pyEvalData",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "pyevaldata"
}
        
Elapsed time: 0.15328s