Skip to main content

A python module for the core scientific dataset model.

Project description

The csdmpy project

Deployment PyPI version PyPI - Python Version
Build Status Travis (.org) Github workflow Documentation Status
License License
Metrics PyPI - DownloadsTotal alerts Language grade: Python codecov
GitHub GitHub issues
Citations DOI DOI

The csdmpy package is a Python support for the core scientific dataset (CSD) model file exchange-format. The package is based on the core scientific dataset (CSD) model which is designed as a building block in the development of a more sophisticated portable scientific dataset file standard. The CSD model is capable of handling a wide variety of scientific datasets both within and across disciplinary fields.

The main objective of this python package is to facilitate an easy import and export of the CSD model serialized JSON files for Python users. The package utilizes Numpy library and, therefore, offers the end users versatility to process or visualize the imported datasets with any third party package(s) compatible with Numpy.

For further reading, refer to the documentation.

Download the examples files using in this package


See example gallery


The core scientific dataset (CSD) model

The core scientific dataset (CSD) model is a light-weight, portable, versatile, and standalone data model capable of handling a variety of scientific datasets. The model only encapsulates data values and the minimum metadata, to accurately represent a p-component dependent variable, discretely sampled at M unique points in a d-dimensional coordinate space. The model is not intended to encapsulate any information on how the data might be acquired, processed, or visualized.

The data model is versatile in allowing many use cases for most spectroscopy, diffraction, and imaging techniques. As such the model supports multi-component datasets associated with continuous physical quantities that are discretely sampled in a multi-dimensional space associated with other carefully controlled quantities, for e.g., a mass as a function of temperature, a current as a function of voltage and time, a signal voltage as a function of magnetic field gradient strength, a color image with a red, green, and blue (RGB) light intensity components as a function of two independent spatial dimensions, or the six components of the symmetric second-rank diffusion tensor MRI as a function of three independent spatial dimensions. Additionally, the model supports multiple dependent variables sharing the same d-dimensional coordinate space. For instance, the simultaneous measurement of current and voltage as a function of time. Another example would be the simultaneous acquisition of air temperature, pressure, wind velocity, and solar-flux as a function of Earth’s latitude and longitude coordinates. We refer to these dependent variables as correlated-datasets.

The CSD model is independent of the hardware, operating system, application software, programming language, and the object-oriented file-serialization format utilized in serializing the CSD model to the file. Out of numerous file serialization formats, XML, JSON, property list, we adopt the data-exchange oriented JSON (JavaScript Object Notation) file-serialization format because it is human-readable, and easily integrable with any number of programming languages and field related application-software.

Installing csdmpy package

Using PIP:

PIP is a package manager for Python packages and is included with python version 3.4 and higher.

$ pip install csdmpy

How to cite

Please cite the following when used in publication.

  1. Srivastava D.J., Vosegaard T., Massiot D., Grandinetti P.J. (2020) Core Scientific Dataset Model: A lightweight and portable model and file format for multi-dimensional scientific data. PLOS ONE 15(1): e0225953.

  2. Additionally, if you use the csdmpy python package, please find the citation for the respective version from zenodo.

Check out the media coverage.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for csdmpy, version 0.4.1
Filename, size File type Python version Upload date Hashes
Filename, size csdmpy-0.4.1.tar.gz (140.5 kB) File type Source Python version None Upload date Hashes View
Filename, size csdmpy-0.4.1-py3-none-any.whl (99.8 kB) File type Wheel Python version py3 Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page