xarray.DataArray.rank

DataArray.rank(self, dim: Hashable, pct: bool = False, keep_attrs: bool = None) → 'DataArray'

Ranks the data.

Equal values are assigned a rank that is the average of the ranks that would have been otherwise assigned to all of the values within that set. Ranks begin at 1, not 0. If pct, computes percentage ranks.

NaNs in the input array are returned as NaNs.

The bottleneck library is required.

Parameters
  • dim (hashable) – Dimension over which to compute rank.

  • pct (bool, optional) – If True, compute percentage ranks, otherwise compute integer ranks.

  • keep_attrs (bool, optional) – If True, the dataset’s attributes (attrs) will be copied from the original object to the new one. If False (default), the new object will be returned without attributes.

Returns

ranked – DataArray with the same coordinates and dtype ‘float64’.

Return type

DataArray

Examples

>>> arr = xr.DataArray([5, 6, 7], dims='x')
>>> arr.rank('x')
<xarray.DataArray (x: 3)>
array([ 1.,   2.,   3.])
Dimensions without coordinates: x