pwtools.signal.pad_zeros¶
- pwtools.signal.pad_zeros(arr, axis=0, where='end', nadd=None, upto=None, tonext=None, tonext_min=None)[source]¶
Pad an nd-array with zeros. Default is to append an array of zeros of the same shape as arr to arr’s end along axis.
- Parameters:
arr (nd array)
axis (the axis along which to pad)
where (string {'end', 'start'}, pad at the end ("append to array") or) – start (“prepend to array”) of axis
nadd (Use only one of) – of an 1d array)
upto (pad until arr.shape[axis] == upto)
tonext (bool, pad up to the next power of two (pad so that the padded) – array has a length of power of two)
tonext_min (int, when using tonext, pad the array to the next possible) – power of two for which the resulting array length along axis is at least tonext_min; the default is tonext_min = arr.shape[axis]
nadd
upto
tonext.
- Return type:
padded array
Examples
>>> # 1d >>> pad_zeros(a) array([1, 2, 3, 0, 0, 0]) >>> pad_zeros(a, nadd=3) array([1, 2, 3, 0, 0, 0]) >>> pad_zeros(a, upto=6) array([1, 2, 3, 0, 0, 0]) >>> pad_zeros(a, nadd=1) array([1, 2, 3, 0]) >>> pad_zeros(a, nadd=1, where='start') array([0, 1, 2, 3]) >>> # 2d >>> a=arange(9).reshape(3,3) >>> pad_zeros(a, nadd=1, axis=0) array([[0, 1, 2], [3, 4, 5], [6, 7, 8], [0, 0, 0]]) >>> pad_zeros(a, nadd=1, axis=1) array([[0, 1, 2, 0], [3, 4, 5, 0], [6, 7, 8, 0]]) >>> # up to next power of two >>> 2**arange(10) array([ 1, 2, 4, 8, 16, 32, 64, 128, 256, 512]) >>> pydos.pad_zeros(arange(9), tonext=True).shape (16,)