integrate

UnitsAwareDataArray.integrate(coord: Hashable | Sequence[Hashable] = None, datetime_unit: DatetimeUnitOptions = None) Self

Integrate along the given coordinate using the trapezoidal rule.

Note

This feature is limited to simple cartesian geometry, i.e. coord must be one dimensional.

Parameters:
  • coord (Hashable, or sequence of Hashable) – Coordinate(s) used for the integration.

  • datetime_unit ({'Y', 'M', 'W', 'D', 'h', 'm', 's', 'ms', 'us', 'ns', 'ps', 'fs', 'as', None}, optional) – Specify the unit if a datetime coordinate is used.

Returns:

integrated

Return type:

DataArray

See also

Dataset.integrate

numpy.trapz

corresponding numpy function

Examples

>>> da = xr.DataArray(
...     np.arange(12).reshape(4, 3),
...     dims=["x", "y"],
...     coords={"x": [0, 0.1, 1.1, 1.2]},
... )
>>> da
<xarray.DataArray (x: 4, y: 3)> Size: 96B
array([[ 0,  1,  2],
       [ 3,  4,  5],
       [ 6,  7,  8],
       [ 9, 10, 11]])
Coordinates:
  * x        (x) float64 32B 0.0 0.1 1.1 1.2
Dimensions without coordinates: y
>>>
>>> da.integrate("x")
<xarray.DataArray (y: 3)> Size: 24B
array([5.4, 6.6, 7.8])
Dimensions without coordinates: y