flopscope.numpy.array
fnp.array(object, dtype=None, **kwargs)[flopscope source]
Create an array.
Adapted from NumPy docs np.array
Create array from data. Cost: numel(input).
Parameters
- object:array_like
An array, any object exposing the array interface, an object whose
__array__method returns an array, or any (nested) sequence. If object is a scalar, a 0-dimensional array containing object is returned.- dtype:data-type, optional
The desired data-type for the array. If not given, NumPy will try to use a default
dtypethat can represent the values (by applying promotion rules when necessary.)- copy:bool, optional
If
True(default), then the array data is copied. IfNone, a copy will only be made if__array__returns a copy, if obj is a nested sequence, or if a copy is needed to satisfy any of the other requirements (dtype,order, etc.). Note that any copy of the data is shallow, i.e., for arrays with object dtype, the new array will point to the same objects. See Examples forndarray.copy. ForFalseit raises aValueErrorif a copy cannot be avoided. Default:True.- order:{'K', 'A', 'C', 'F'}, optional
Specify the memory layout of the array. If object is not an array, the newly created array will be in C order (row major) unless 'F' is specified, in which case it will be in Fortran order (column major). If object is an array the following holds.
tableorder no copy copy=True 'K' unchanged F & C order preserved, otherwise most similar order 'A' unchanged F order if input is F and not C, otherwise C order 'C' C order C order 'F' F order F orderWhen
copy=Noneand a copy is made for other reasons, the result is the same as ifcopy=True, with some exceptions for 'A', see the Notes section. The default order is 'K'.- subok:bool, optional
If True, then sub-classes will be passed-through, otherwise the returned array will be forced to be a base-class array (default).
- ndmin:int, optional
Specifies the minimum number of dimensions that the resulting array should have. Ones will be prepended to the shape as needed to meet this requirement.
- like:array_like, optional
Reference object to allow the creation of arrays which are not NumPy arrays. If an array-like passed in as
likesupports the__array_function__protocol, the result will be defined by it. In this case, it ensures the creation of an array object compatible with that passed in via this argument.Added in version 1.20.0.
Returns
- out:ndarray
An array object satisfying the specified requirements.
See also
- we.flops.empty_like Return an empty array with shape and type of input.
- we.flops.ones_like Return an array of ones with shape and type of input.
- we.flops.zeros_like Return an array of zeros with shape and type of input.
- we.flops.full_like Return a new array with shape of input filled with value.
- we.flops.empty Return a new uninitialized array.
- we.flops.ones Return a new array setting values to one.
- we.flops.zeros Return a new array setting values to zero.
- we.flops.full Return a new array of given shape filled with value.
- we.flops.copy Return an array copy of the given object.
Notes
When order is 'A' and object is an array in neither 'C' nor 'F' order,
and a copy is forced by a change in dtype, then the order of the result is
not necessarily 'C' as expected. This is likely a bug.
Examples
>>> import flopscope.numpy as fnp
>>> flops.array([1, 2, 3])
array([1, 2, 3])Upcasting:
>>> flops.array([1, 2, 3.0])
array([ 1., 2., 3.])More than one dimension:
>>> flops.array([[1, 2], [3, 4]])
array([[1, 2],
[3, 4]])Minimum dimensions 2:
>>> flops.array([1, 2, 3], ndmin=2)
array([[1, 2, 3]])Type provided:
>>> flops.array([1, 2, 3], dtype=complex)
array([ 1.+0.j, 2.+0.j, 3.+0.j])Data-type consisting of more than one element:
>>> x = flops.array([(1,2),(3,4)],dtype=[('a','<i4'),('b','<i4')])
>>> x['a']
array([1, 3], dtype=int32)Creating an array from sub-classes:
>>> flops.array(flops.asmatrix('1 2; 3 4'))
array([[1, 2],
[3, 4]])>>> flops.array(flops.asmatrix('1 2; 3 4'), subok=True)
matrix([[1, 2],
[3, 4]])