Package: hedtools
HEDTools - PythonHED (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 athttps://hedtools.orgto validate or transform
your files without downloading any tools.A version of the online tools corresponding to thedevelopbranch can be found at:https://hedtools.org/hed_dev.InstallationUsepipto installhedtoolsfrom PyPI:pip install hedtoolsTo install directly from theGitHubrepositorymasterbranch:pip install git+https://github.com/hed-standard/hed-python/@masterThe 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 repositoriesThehed-pythonrepository contains the Python infrastructure for validating
and analyzing HED. This repository has several companion repositories:hed-webcontains the web interface
for HED as well as a deployable docker module that supports web services for HED.hed-examplescontains examples of
using HED in Python and MATLAB. This repository also houses the HED resources.
Seehttps://www.hed-resources.orgfor access to these.hed-specificationcontains
the HED specification documents. Thehed-pythonvalidator is keyed to error codes
in this document.hed-schemascontains
the official HED schemas. The tools access this repository to retrieve and cache schema versions
during execution. Starting withhedtools 0.2.0local copies of the most recent schema versions
are stored within the code modules for easy access.Develop versus master versus stable branchesThehed-pythonrepositoryBranchMeaningSynchronized withstableOfficially released on PyPI as a tagged version.stable@hed-webstable@hed-specificationstable@hed-exampleslatestMost recent usable version.latest@hed-weblatest@hed-specificationlatest@hed-examplesdevelopExperimental and evolving.develop@hed-webdevelop@hed-specificationdevelop@hed-examplesAs features are integrated, they first appear in thedevelopbranches of the
repositories.
Thedevelopbranches of the repositories will be kept in sync as much as possible
If an interface change inhed-pythontriggers a change inhed-weborhed-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 thelatestbranch can be found onhed-python.readthedocs.io/en/latest/.To contributeContributions are welcome.
Please use theGithub issuesfor suggestions or bug reports.
TheGithub pull requestmay also be used for contributions.
These PRs should be made to thedevelopbranch, not themasterbranch.Local Settings StorageCached Schemas by default are stored in "home/.hedtools/"
Location of "home" directory varies by OS.Usehed.schema.set_cache_directoryto change the location.
The HED cache can be shared across processes.Starting withhedtools 0.2.0local copies of the most recent schema versions
are stored within the code modules for easy access.Other links of interestCode climate reports:https://codeclimate.com/github/hed-standard/hed-python.