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 Github workflow Documentation Status
License License
Metrics codecov GitHub issues
Citation 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.

See example gallery

View

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.


Use cases

The data model is versatile in allowing many use cases for most spectroscopy, diffraction, and imaging techniques.

Data Model

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.

Example

"csdm": {
  "version": "1.0",
  # A list of Linear, Monotonic, or Labeled dimensions of the multi-dimensional space.
  "dimensions": [{
    "type": "linear",
    "count": 1608,
    "increment": "0.08333333333 yr",
    "coordinates_offset": "1880.0416666667 yr",
  }],
  # A list of dependent variables sampling the multi-dimensional space.
  "dependent_variables": [{
    "type": "internal",
    "unit": "mm",
    "numeric_type": "float32",
    "quantity_type": "scalar",
    "component_labels": ["GMSL"],
    "components": [
      ["-183.0, -171.125, ..., 59.6875, 58.5"]
    ]
  }]
}

Installing csdmpy package

$ 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.

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.

Source Distribution

csdmpy-0.7.0.tar.gz (523.0 kB view details)

Uploaded Source

Built Distribution

csdmpy-0.7.0-py3-none-any.whl (68.9 kB view details)

Uploaded Python 3

File details

Details for the file csdmpy-0.7.0.tar.gz.

File metadata

  • Download URL: csdmpy-0.7.0.tar.gz
  • Upload date:
  • Size: 523.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for csdmpy-0.7.0.tar.gz
Algorithm Hash digest
SHA256 035fbc6902715688d8e22dfc977d701e96fde6961db56708241c3ef4171d6008
MD5 f961eec7f79c018421fe91dae9b2f92b
BLAKE2b-256 ebb8d2a031f800f6b03df3b49708524b48028635f11090b99aef97161e66b027

See more details on using hashes here.

File details

Details for the file csdmpy-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: csdmpy-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 68.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for csdmpy-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 96af169f09c2fc555a91a49f001e3b502a743615a206ab2affe7f1c4ed313108
MD5 9c6a9ea6b31ada9d1e249914feb0b165
BLAKE2b-256 090aebb7347da4cca0b9f9d2fedc7607845dce49e808d3a854d6046d4ece2a65

See more details on using hashes here.

Supported by

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