API reference

This page provides an auto-generated summary of xarray’s API. For more details and examples, refer to the relevant chapters in the main part of the documentation.

See also: What parts of xarray are considered public API? and How stable is Xarray’s API?.

Top-level functions

Dataset

Creating a dataset

Attributes

Dictionary interface

Datasets implement the mapping interface with keys given by variable names and values given by DataArray objects.

Dataset contents

Comparisons

Indexing

Missing value handling

Computation

Aggregation

ndarray methods

Reshaping and reorganizing

DataArray

Attributes

ndarray attributes

DataArray contents

Indexing

Missing value handling

Comparisons

Computation

Aggregation

ndarray methods

String manipulation

Datetimelike properties

Datetime properties:

Datetime methods:

Timedelta properties:

Timedelta methods:

Reshaping and reorganizing

DataTree

Creating a DataTree

Methods of creating a DataTree.

Tree Attributes

Attributes relating to the recursive tree-like structure of a DataTree.

Data Contents

Interface to the data objects (optionally) stored inside a single DataTree node. This interface echoes that of xarray.Dataset.

Dictionary Interface

DataTree objects also have a dict-like interface mapping keys to either xarray.DataArrays or to child DataTree nodes.

Tree Manipulation

For manipulating, traversing, navigating, or mapping over the tree structure.

Pathlib-like Interface

DataTree objects deliberately echo some of the API of pathlib.PurePath.

DataTree Contents

Manipulate the contents of all nodes in a DataTree simultaneously.

DataTree Node Contents

Manipulate the contents of a single DataTree node.

DataTree Operations

Apply operations over multiple DataTree objects.

Comparisons

Compare one DataTree object to another.

Indexing

Index into all nodes in the subtree simultaneously.

Aggregation

Aggregate data in all nodes in the subtree simultaneously.

ndarray methods

Methods copied from numpy.ndarray objects, here applying to the data in all nodes in the subtree.

Coordinates

Creating coordinates

Attributes

Dictionary Interface

Coordinates implement the mapping interface with keys given by variable names and values given by DataArray objects.

Coordinates contents

Comparisons

Proxies

Coordinates that are accessed from the coords property of Dataset, DataArray and DataTree objects, respectively.

Universal functions

These functions are equivalent to their NumPy versions, but for xarray objects backed by non-NumPy array types (e.g. cupy, sparse, or jax), they will ensure that the computation is dispatched to the appropriate backend. You can find them in the xarray.ufuncs module:

IO / Conversion

Dataset methods

DataArray methods

DataTree methods

Encoding/Decoding

Coder objects

Plotting

Dataset

DataArray

Faceting

GroupBy objects

Dataset

DataArray

Grouper Objects

Rolling objects

Dataset

DataArray

Coarsen objects

Dataset

DataArray

Exponential rolling objects

Weighted objects

Dataset

DataArray

Resample objects

Dataset

DataArray

Accessors

Custom Indexes

Creating custom indexes

Tutorial

Testing

Test that two DataTree objects are similar.

Hypothesis Testing Strategies

See the documentation page on testing for a guide on how to use these strategies.

Warning

These strategies should be considered highly experimental, and liable to change at any time.

Exceptions

DataTree

Exceptions raised when manipulating trees.

Advanced API

Default, pandas-backed indexes built-in Xarray:

indexes.PandasIndex indexes.PandasMultiIndex

These backends provide a low-level interface for lazily loading data from external file-formats or protocols, and can be manually invoked to create arguments for the load_store and dump_to_store Dataset methods:

These BackendEntrypoints provide a basic interface to the most commonly used filetypes in the xarray universe.

Deprecated / Pending Deprecation