Implementation of ISA-tools data model and ISA-TAB
Ambrosia peruviana is a species of plant in the family Asteraceae. It occurs from Mexico south to Argentina, being common in the Antilles and the Andes.
In its native range, A. peruviana is used as a medicinal plant with analgesic, antiinflammatory, anthelmintic and antiseptic properties.
For the Impatient
$ pip install altamisa ## OR $ conda install altamisa
What is ISA and ISA-Tab?
The ISA (Investigation-Study-Assay) defines a data model for describing life science experiments (specification). ISA-Tab defines a file format based on TSV (tab-separated values) for storing of ISA data in files. Shortly, experiments are encoded by DAGs (directed acyclic graphs) of samples being taken from sources (e.g., donor individuals) and then subjected to "operations" (e.g., extraction, assays, transformations) leading to different downstream "materials".
Attempting to use the official
isa-api Python package in early 2018 led to quite some frustration.
Even the official ISA-tab examples parsed into non-expected graph structures.
Attempting bug fixes to
isa-api proofed difficult because of not having complete automated tests.
Further, the scope of
isa-api was much broader (including between ISA-Tab and other formats) such that we expected high maintenance costs (development had apparently stalled).
- Programming Language: Python 3 (with full type annotations)
- License: MIT
- Test Coverage: >90%
- Documentation: see here
- Code Style: black, 100 characters/line
- Mostly meta adjustments.
- Adding exception for duplicate node annotations
- Minor fixes regarding investigation file names and comments.
- Minor fixes of validation and warnings.
- Fixes optional parameter
- Ensuring that input order is output order. This is true except for the corner case where materials are not located in "blocks". Such corner cases would require storing the tabular representation (and keeping it in sync) at all times and does not yield to a robustly usable implementation. NB: the input is also not sorted the test adjusted with this patch shows.
- Adding optional parameter
filenameto the various readers.
RefTableBuilderclass with slightly changed interface.
- Minor fixes and additions with focus on improving the export.
- Updating documentation for JOSS.
- Adding JOSS paper draft.
- Fixing problem with writing empty lines on Windows (#52).
- Update documentation with examples for manual model creation.
- Fixing authorship documentation.
- Fixing package (#58).
- Switching to
attrsinstead of using
Namedtuple. This gets rid of some warts regarding constructor overriding but should offer the same functionality otherwise.
- Various updates to the documentation.
First public release.
- Started out with ISA-TAB parser and
NamedTuple-based data model.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.