Skip to main content

Memory-mapped numeric arrays, based on a format that is self-explanatory and tool-independent

Project description

Darr is a Python science library that enables you to work efficiently with disk-based numeric arrays without depending on tool-specific data formats. This makes it easy to share your data with those who do not use Darr or even Python. No exporting required and, as the data is saved in a self-explanatory way, not much explanation required either. Tool-independent and easy access to data is in line with good scientific practice as it promotes wide and long-term availability, to others but also to yourself. More rationale for this approach is provided here.

Darr supports efficient read/write/append access and is based on universally readable flat binary files and automatically generated text files, containing human-readable explanation of precisely how your binary data is stored. It also provides specific code that reads the data in a variety of current scientific data tools such as Python, R, Julia, IDL, Matlab, Maple, and Mathematica (see example array).

Darr currently supports numerical N-dimensional arrays, and experimentally supports numerical ragged arrays, i.e. a series of arrays in which one dimension varies in length.

See this tutorial for a brief introduction, or the documentation for more info.

Darr is currently pre-1.0, still undergoing significant development. It is open source and freely available under the New BSD License terms.

Features

Pro’s:

  • Purely based on flat binary and text files, tool independence.

  • Human-readable explanation of how the binary data is stored is saved in a README text file.

  • Includes examples of how to read the array in popular analysis environments such as Python (without Darr), R, Julia, Octave/Matlab, GDL/IDL, and Mathematica.

  • Supports very large data arrays, larger than RAM.

  • Data read/write access is simple through NumPy indexing (see here).

  • Data is easily appendable.

  • Many numeric types are supported: (u)int8-(u)int64, float16-float64, complex64, complex128.

  • Easy use of metadata, stored in a separate JSON text file.

  • Minimal dependencies, only NumPy.

  • Integrates easily with the Dask library for numeric computation on very large Darr arrays.

  • Supports ragged arrays (still experimental).

See the [documentation](http://darr.readthedocs.io/) for more information.

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

darr-0.2.0.tar.gz (50.3 kB view details)

Uploaded Source

Built Distributions

darr-0.2.0-py3.6.egg (95.7 kB view details)

Uploaded Source

darr-0.2.0-py3-none-any.whl (42.4 kB view details)

Uploaded Python 3

File details

Details for the file darr-0.2.0.tar.gz.

File metadata

  • Download URL: darr-0.2.0.tar.gz
  • Upload date:
  • Size: 50.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.5.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.8

File hashes

Hashes for darr-0.2.0.tar.gz
Algorithm Hash digest
SHA256 4a7fd32231e872a2dc3028ef8e58b7916afbd37e5b55e6b834e56debc7abae4c
MD5 2a2b45702b39d89a3f9c453c8510b3d9
BLAKE2b-256 ac19b4a20b05741dc97e13d72ff995361627f46dfcd32410602a1de3b9c146dd

See more details on using hashes here.

File details

Details for the file darr-0.2.0-py3.6.egg.

File metadata

  • Download URL: darr-0.2.0-py3.6.egg
  • Upload date:
  • Size: 95.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/45.2.0.post20200210 requests-toolbelt/0.9.1 tqdm/4.42.1 CPython/3.7.6

File hashes

Hashes for darr-0.2.0-py3.6.egg
Algorithm Hash digest
SHA256 ed25707a0feb421db2ba2ad66fe71afbea0489060e6799578ce66bb5a5da4870
MD5 a9e67e46be60181b7638376627dd5bd9
BLAKE2b-256 881101c02a78a0f25abd70ba769644386e40edb823597a601faa2fbe2d6a46c8

See more details on using hashes here.

File details

Details for the file darr-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: darr-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 42.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/2.0.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.5.0 requests-toolbelt/0.9.1 tqdm/4.36.1 CPython/3.6.8

File hashes

Hashes for darr-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 aaa1601ac3ca40ccd9fde571d893bf05de2d8b88498d25305a21fe4946ac84b6
MD5 a05965049f3daebc7e2aec0e583d4536
BLAKE2b-256 5243188cffac9f7165ef185c8a863868be117eed919304d90aad97dec12be007

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