Skip to main content

HED validation, summary, and analysis tools.

Project description

DOI Maintainability Test Coverage PyPI - Status

HEDTools - Python

HED (Hierarchical Event Descriptors) is a framework for systematically describing both laboratory and real-world events as well as other experimental metadata. HED tags are comma-separated path strings. HED, itself, is platform-independent, extendable, and data-neutral.

This repository contains the underlying python tools that support validation, summarization, and analysis of datasets using HED tags.

Most people will simply annotate their events by creating a spreadsheet or a BIDS JSON sidecar that associates HED tags with event codes or the events themselves. If you have such a spreadsheet or a JSON, you can use the HED Online Validator currently available at https://hedtools.org to validate or transform your files without downloading any tools.

A version of the online tools corresponding to the develop branch can be found at: https://hedtools.org/hed_dev.

Installation

Use pip to install hedtools from PyPI:

    pip install hedtools

To install directly from the GitHub repository master branch:

    pip install git+https://github.com/hed-standard/hed-python/@master

The HEDTools in this repository require Python 3.7 or greater. Note: HED is continuing to support Python 3.7 until 2023, because it is needed for MATLAB versions R2019a through R2020a.

Note: The final exported interface for Python tools has not been completely frozen in 0.1.0 and is expected to undergo minor changes in interface until the release of version 1.0.0.

Relationship to other repositories

The hed-python repository contains the Python infrastructure for validating and analyzing HED. This repository has several companion repositories:

  • hed-web contains the web interface for HED as well as a deployable docker module that supports web services for HED.
  • hed-examples contains examples of using HED in Python and MATLAB. This repository also houses the HED resources. See https://www.hed-resources.org for access to these.
  • hed-specification contains the HED specification documents. The hed-python validator is keyed to error codes in this document.
  • hed-schemas contains the official HED schemas. The tools access this repository to retrieve and cache schema versions during execution. Starting with hedtools 0.2.0 local copies of the most recent schema versions are stored within the code modules for easy access.

Develop versus master versus stable branches

The hed-python repository

Branch Meaning Synchronized with
stable Officially released on PyPI as a tagged version. stable@hed-web
stable@hed-specification
stable@hed-examples
latest Most recent usable version. latest@hed-web
latest@hed-specification
latest@hed-examples
develop Experimental and evolving. develop@hed-web
develop@hed-specification
develop@hed-examples

As features are integrated, they first appear in the develop branches of the repositories. The develop branches of the repositories will be kept in sync as much as possible If an interface change in hed-python triggers a change in hed-web or hed-examples, every effort will be made to get the three types of branches (develop, latest, stable) of the respective repositories in sync.

API documentation is generated on ReadTheDocs when a new version is pushed on any of the three branches. For example, the API documentation for the latest branch can be found on hed-python.readthedocs.io/en/latest/.

To contribute

Contributions are welcome. Please use the Github issues for suggestions or bug reports. The Github pull request may also be used for contributions. These PRs should be made to the develop branch, not the master branch.

Local Settings Storage

Cached Schemas by default are stored in "home/.hedtools/" Location of "home" directory varies by OS.

Use hed.schema.set_cache_directory to change the location. The HED cache can be shared across processes.

Starting with hedtools 0.2.0 local copies of the most recent schema versions are stored within the code modules for easy access.

Other links of interest

Code climate reports: https://codeclimate.com/github/hed-standard/hed-python.

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

hedtools-0.3.1.tar.gz (385.0 kB view details)

Uploaded Source

Built Distribution

hedtools-0.3.1-py3-none-any.whl (440.9 kB view details)

Uploaded Python 3

File details

Details for the file hedtools-0.3.1.tar.gz.

File metadata

  • Download URL: hedtools-0.3.1.tar.gz
  • Upload date:
  • Size: 385.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.9

File hashes

Hashes for hedtools-0.3.1.tar.gz
Algorithm Hash digest
SHA256 fd55cc1f83ae0bbddbb75287f92a572fe5cf8091630975a5533a9ad5a80e8315
MD5 2fe28414c64cb79e4803ec4cb5dadfcb
BLAKE2b-256 87abf5c9f64b2c0ad06d2681e33901a281d6cb1b8d95198fbf81273a8b89670c

See more details on using hashes here.

File details

Details for the file hedtools-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: hedtools-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 440.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.7.9

File hashes

Hashes for hedtools-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 54a6b5446b5d537e772ddfa9afacc8149e9d8e94a42497f417e5c761ef93dd28
MD5 14eb3a7c4356562e9dfe14d52b064fb3
BLAKE2b-256 f9b667657b09d3300e67e9682a3400fadd8d713a50039cc825532e522c7fdecb

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