cf.indices_shape¶

cf.
indices_shape
(indices, full_shape, keepdims=True)[source]¶ Return the shape of the array subspace implied by indices.
Performance
Boolean
dask
arrays will be computed, anddask
arrays with unknown size will have their chunk sizes computed.New in version 3.14.0.
See also
cf.parse_indices
 Parameters
 Returns
list
The shape of the subspace defined by the indices.
Examples
>>> import numpy as np >>> import dask.array as da
>>> cf.indices_shape((slice(2, 5), 4), (10, 20)) [3, 1] >>> cf.indices_shape(([2, 3, 4], np.arange(1, 6)), (10, 20)) [3, 5]
>>> index0 = [False] * 5 >>> index0[2:5] = [True] * 3 >>> cf.indices_shape((index0, da.arange(1, 6)), (10, 20)) [3, 5]
>>> index0 = da.full((5,), False, dtype=bool) >>> index0[2:5] = True >>> index1 = np.full((6,), False, dtype=bool) >>> index1[1:6] = True >>> cf.indices_shape((index0, index1), (10, 20)) [3, 5]
>>> index0 = da.arange(5) >>> index0 = index0[index0 < 3] >>> cf.indices_shape((index0, []), (10, 20)) [3, 0]
>>> cf.indices_shape((da.from_array(2), np.array(3)), (10, 20)) [1, 1] >>> cf.indices_shape((da.from_array([]), np.array(())), (10, 20)) [0, 0] >>> cf.indices_shape((slice(1, 5, 3), 3), (10, 20)) [2, 1] >>> cf.indices_shape((slice(5, 1, 2), 3), (10, 20)) [2, 1] >>> cf.indices_shape((slice(5, 1, 3), 3), (10, 20)) [0, 1] >>> cf.indices_shape((slice(1, 5, 3), 3), (10, 20)) [0, 1]
>>> cf.indices_shape((slice(2, 5), 4), (10, 20), keepdims=False) [3] >>> cf.indices_shape((da.from_array(2), 3), (10, 20), keepdims=False) [] >>> cf.indices_shape((2, np.array(3)), (10, 20), keepdims=False) []