Skip to content

Latest commit

 

History

History
65 lines (47 loc) · 2.81 KB

README.md

File metadata and controls

65 lines (47 loc) · 2.81 KB

SDDS

Cron Testing Code Climate coverage Code Climate maintainability (percentage)

PyPI Version GitHub release Conda-forge Version DOI

This package provides reading and writing functionality for self describing data sets (sdds) files. On the python side, the data is stored in a class structure with attributes corresponding to the sdds-format itself (see sdds-format).

See the API documentation for details.

Installing

Installation is easily done via pip:

python -m pip install sdds

One can also install in a conda environment via the conda-forge channel with:

conda install -c conda-forge sdds

Example Usage

import sdds

sdds_data = sdds.read("path_to_input.sdds")
sdds.write(sdds_data, "path_to_output.sdds")

Read files with different endianness

By default the endianness (byte order) of the file is determined either by a comment !# little-endian or !# big-endian in the header of the file. If this comment is not found, the endianness of the running machine is assumed.

One can force a certain kind of endianness to the reader by supplying it to the read function:

import sdds

sdds_data = sdds.read("path_to_input_with_big_endian.sdds", endianness="big")
sdds_data = sdds.read("path_to_input_with_little_endian.sdds", endianness="little")

Be aware that sdds.write will always write the file in big-endian order and will also leave a comment in the file, so that the reader can determine the endianness and there is no need to supply it when reading a file written by this package.

Known Issues

  • Can't read binary columns
  • No support for &include tag

License

This project is licensed under the MIT License - see the LICENSE file for details.