Skip to main content

Extended arrays for working with scientific datasets in Python

Project description

xray is a Python package for working with aligned sets of homogeneous, n-dimensional arrays. It implements flexible array operations and dataset manipulation for in-memory datasets within the Common Data Model widely used for self-describing scientific data (e.g., the NetCDF file format).

Why xray?

Adding dimensions names and coordinate values to numpy’s ndarray makes many powerful array operations possible:

  • Apply operations over dimensions by name: x.sum('time').

  • Select values by label instead of integer location: x.loc['2014-01-01'] or x.labeled(time='2014-01-01').

  • Mathematical operations (e.g., x - y) vectorize across multiple dimensions (known in numpy as “broadcasting”) based on dimension names, regardless of their original order.

  • Flexible split-apply-combine operations with groupby: x.groupby('time.dayofyear').mean().

  • Database like aligment based on coordinate labels that smoothly handles missing values: x, y = xray.align(x, y, join='outer').

  • Keep track of arbitrary metadata in the form of a Python dictionary: x.attrs.

xray aims to provide a data analysis toolkit as powerful as pandas but designed for working with homogeneous N-dimensional arrays instead of tabular data. Indeed, much of its design and internal functionality (in particular, fast indexing) is shamelessly borrowed from pandas.

Because xray implements the same data model as the NetCDF file format, xray datasets have a natural and portable serialization format. But it’s also easy to robustly convert an xray DataArray to and from a numpy ndarray or a pandas DataFrame or Series, providing compatibility with the full PyData ecosystem.

For more about xray, see the project’s GitHub page and documentation

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

xray-0.1.0.tar.gz (66.1 kB view details)

Uploaded Source

File details

Details for the file xray-0.1.0.tar.gz.

File metadata

  • Download URL: xray-0.1.0.tar.gz
  • Upload date:
  • Size: 66.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for xray-0.1.0.tar.gz
Algorithm Hash digest
SHA256 6c2951ab17dd0f32ce406f40f313a82041682376d61a2b3c3cc34dac7c385985
MD5 9466f431e8e04de2a83bf2ecfbe7de27
BLAKE2b-256 17dcc0688b6d9a24fed4f7d0db74b3c98fa8a2084c6badec1e2f1c422262b043

See more details on using hashes here.

Supported by

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