Skip to main content

yet another datagram

Project description

DOI Documentation PyPi version Github link Github status

yet another datagram

A set of tools to extract raw data from scientific instruments into standardised DataTree in-memory objects, or into NetCDF files on disk. The resulting data is annotated with metadata, provenance information, timestamps, units, and uncertainties. Currently developed at the ConCat lab at Technische Universität Berlin (Berlin, DE) and the Materials for Energy Conversion lab at Empa (Dübendorf, CH).

Capabilities:

  • Extraction of chromatography data from gas and liquid chromatograms. Supports several Agilent, EZChrom, Masshunter, and Fusion formats.
  • Extraction of electrochemical data from electrochemistry and battery cycling experiments. Supports BioLogic file formats.
  • Extraction of reflection coefficient traces from network analysers. Supports the Touchstone file format.
  • Extraction of spectroscopy files including common XPS, XRD and MS formats.
  • Extraction of tabulated data using CSV parsing functionality, including Bronkhorst and DryCal output formats.

Additionally, data from multiple files of the same type, or even of different types, can be easily and reproducibly combined into a single DataTree by using process and preset modes of yadg.

Features:

  • timezone-aware timestamp processing using Unix timestamps
  • locale-aware processing of files
  • automatic uncertainty determination using data contained in the raw files, instrument specification, or last significant digit
  • tagging of all data with units
  • annotation with processing metadata (such as provenance or extraction date) under the yadg_⋅⋅⋅ namespace
  • original metadata from the extracted files is stored under original_metadata
  • extensive dataschema validation using provided specifications

The full list of capabilities and features is listed in the project documentation.

Installation:

The released versions of yadg are available on the Python Package Index (PyPI) under yadg. Those can be installed using:

pip install yadg

If you wish to install the current development version as an editable installation, check out the main branch using git, and install yadg as an editable package using pip:

git clone git@github.com:dgbowl/yadg.git
cd yadg
pip install -e .

Additional targets yadg[testing] and yadg[docs] are available and can be specified in the above commands, if testing and/or documentation capabilities are required.

Usage:

After installing yadg, you can extract data from single files of known filetypes using:

yadg extract <filetype> <infile> [outfile]

This will write the data extracted from the infile into a NetCDF file called outfile. An example usage for BioLogic MPR files would be:

yadg extract eclab.mpr example_file.mpr output_file.nc

Alternatively, you can obtain a DataTree object in Python via:

import yadg
yadg.extractors.extract(filetype=<filetype>, path=<infile>)

More detailed usage instructions are available in the project documentation.

Contributors:

Acknowledgements

This project has received funding from the following sources:

  • European Union’s Horizon 2020 programme under grant agreement No 957189.
  • DFG's Emmy Noether Programme under grant number 490703766.

The project is also part of BATTERY 2030+, the large-scale European research initiative for inventing the sustainable batteries of the future.

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

yadg-6.2.4.tar.gz (97.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

yadg-6.2.4-py3-none-any.whl (114.0 kB view details)

Uploaded Python 3

File details

Details for the file yadg-6.2.4.tar.gz.

File metadata

  • Download URL: yadg-6.2.4.tar.gz
  • Upload date:
  • Size: 97.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for yadg-6.2.4.tar.gz
Algorithm Hash digest
SHA256 59c2c6d28ef49e0f3e26ac481c32b18f666b6d1c56153f13d3642a088903fae4
MD5 d1ac7d77b4317179115e2e1c38dc2b23
BLAKE2b-256 ad165b488d4aca7b9cd5bf9d2568a50ed094b99ecf85840ce0ba32e3e7cc08f8

See more details on using hashes here.

File details

Details for the file yadg-6.2.4-py3-none-any.whl.

File metadata

  • Download URL: yadg-6.2.4-py3-none-any.whl
  • Upload date:
  • Size: 114.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.6

File hashes

Hashes for yadg-6.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 16ec6a60729d2ea5454b41a8deaa01790951d7578b2e01682e1fed6ff7069677
MD5 baa0a2b76f6ac0e9cbde01e8abbd7ddc
BLAKE2b-256 ed724b04ab8b0e6f9fbd0ab85a4d742551ef191751a02abb5d6dff946fcd3a96

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page