flopscope.numpy.concatenate
fnp.concatenate(arrays, axis=0, **kwargs)[flopscope source]
Join a sequence of arrays along an existing axis.
Adapted from NumPy docs np.concatenate
Join arrays along axis. Cost: numel(output).
Parameters
- a1, a2, ...:sequence of array_like
The arrays must have the same shape, except in the dimension corresponding to
axis(the first, by default).- axis:int, optional
The axis along which the arrays will be joined. If axis is None, arrays are flattened before use. Default is 0.
- out:ndarray, optional
If provided, the destination to place the result. The shape must be correct, matching that of what concatenate would have returned if no out argument were specified.
- dtype:str or dtype
If provided, the destination array will have this dtype. Cannot be provided together with
out.Added in version 1.20.0.- casting:{'no', 'equiv', 'safe', 'same_kind', 'unsafe'}, optional
Controls what kind of data casting may occur. Defaults to 'same_kind'. For a description of the options, please see casting.
Added in version 1.20.0.
Returns
- res:ndarray
The concatenated array.
See also
- ma.concatenate Concatenate function that preserves input masks.
- we.flops.array_split Split an array into multiple sub-arrays of equal or near-equal size.
- we.flops.split Split array into a list of multiple sub-arrays of equal size.
- we.flops.hsplit Split array into multiple sub-arrays horizontally (column wise).
- we.flops.vsplit Split array into multiple sub-arrays vertically (row wise).
- we.flops.dsplit Split array into multiple sub-arrays along the 3rd axis (depth).
- we.flops.stack Stack a sequence of arrays along a new axis.
- we.flops.block Assemble arrays from blocks.
- we.flops.hstack Stack arrays in sequence horizontally (column wise).
- we.flops.vstack Stack arrays in sequence vertically (row wise).
- we.flops.dstack Stack arrays in sequence depth wise (along third dimension).
- we.flops.column_stack Stack 1-D arrays as columns into a 2-D array.
Notes
When one or more of the arrays to be concatenated is a MaskedArray, this function will return a MaskedArray object instead of an ndarray, but the input masks are not preserved. In cases where a MaskedArray is expected as input, use the ma.concatenate function from the masked array module instead.
Examples
>>> import flopscope.numpy as fnp
>>> a = flops.array([[1, 2], [3, 4]])
>>> b = flops.array([[5, 6]])
>>> flops.concatenate((a, b), axis=0)
array([[1, 2],
[3, 4],
[5, 6]])
>>> flops.concatenate((a, b.T), axis=1)
array([[1, 2, 5],
[3, 4, 6]])
>>> flops.concatenate((a, b), axis=None)
array([1, 2, 3, 4, 5, 6])This function will not preserve masking of MaskedArray inputs.
>>> a = flops.ma.arange(3)
>>> a[1] = flops.ma.masked
>>> b = flops.arange(2, 5)
>>> a
masked_array(data=[0, --, 2],
mask=[False, True, False],
fill_value=999999)
>>> b
array([2, 3, 4])
>>> flops.concatenate([a, b])
masked_array(data=[0, 1, 2, 2, 3, 4],
mask=False,
fill_value=999999)
>>> flops.ma.concatenate([a, b])
masked_array(data=[0, --, 2, 2, 3, 4],
mask=[False, True, False, False, False, False],
fill_value=999999)