pysteps.utils.dimension.aggregate_fields¶
-
pysteps.utils.dimension.
aggregate_fields
(data, window_size, axis=0, method='mean', trim=False)¶ Aggregate fields along a given direction.
It attempts to aggregate the given R axis in an integer number of sections of length =
window_size
. If such a aggregation is not possible, an error is raised unlesstrim
set to True, in which case the axis is trimmed (from the end) to make it perfectly divisible”.- Parameters
- data: array-like
Array of any shape containing the input fields.
- window_size: int or tuple of ints
The length of the window that is used to aggregate the fields. If a single integer value is given, the same window is used for all the selected axis.
If
window_size
is a 1D array-like, each element indicates the length of the window that is used to aggregate the fields along each axis. In this case, the number of elements of ‘window_size’ must be the same as the elements in theaxis
argument.- axis: int or array-like of ints
Axis or axes where to perform the aggregation. If this is a tuple of ints, the aggregation is performed over multiple axes, instead of a single axis
- method: string, optional
Optional argument that specifies the operation to use to aggregate the values within the window. Default to mean operator.
- trim: bool
In case that the
data
is not perfectly divisible bywindow_size
along the selected axis:trim=True: the data will be trimmed (from the end) along that axis to make it perfectly divisible.
trim=False: a ValueError exception is raised.
- Returns
- new_array: array-like
The new aggregated array with shape[axis] = k, where k = R.shape[axis] / window_size.