block_reduce¶
-
ccdproc.
block_reduce
(ccd, block_size, func=<function sum at 0x7f2087952ea0>)[source]¶ Thin wrapper around
astropy.nddata.block_reduce
. Downsample a data array by applying a function to local blocks.If
data
is not perfectly divisible byblock_size
along a given axis then the data will be trimmed (from the end) along that axis.Parameters: - data : array_like
The data to be resampled.
- block_size : int or array_like (int)
The integer block size along each axis. If
block_size
is a scalar anddata
has more than one dimension, thenblock_size
will be used for for every axis.- func : callable, optional
The method to use to downsample the data. Must be a callable that takes in a
ndarray
along with anaxis
keyword, which defines the axis along which the function is applied. The default issum
, which provides block summation (and conserves the data sum).
Returns: - output : array-like
The resampled data.
Examples
>>> import numpy as np >>> from astropy.nddata.utils import block_reduce >>> data = np.arange(16).reshape(4, 4) >>> block_reduce(data, 2) # doctest: +SKIP array([[10, 18], [42, 50]])
>>> block_reduce(data, 2, func=np.mean) # doctest: +SKIP array([[ 2.5, 4.5], [ 10.5, 12.5]])