flopscope.numpy.fromiter
fnp.fromiter(*args, **kwargs)[flopscope source]
Create a new 1-dimensional array from an iterable object.
Adapted from NumPy docs np.fromiter
Create array from an iterable. Cost: numel(output).
Parameters
- iter:iterable object
An iterable object providing data for the array.
- dtype:data-type
The data-type of the returned array.
Changed in version 1.23.- count:int, optional
The number of items to read from iterable. The default is -1, which means all data is read.
- 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
The output array.
Notes
Specify count to improve performance. It allows fromiter to
pre-allocate the output array, instead of resizing it on demand.
Examples
>>> import flopscope.numpy as fnp
>>> iterable = (x*x for x in range(5))
>>> flops.fromiter(iterable, float)
array([ 0., 1., 4., 9., 16.])A carefully constructed subarray dtype will lead to higher dimensional results:
>>> iterable = ((x+1, x+2) for x in range(5))
>>> flops.fromiter(iterable, dtype=flops.dtype((int, 2)))
array([[1, 2],
[2, 3],
[3, 4],
[4, 5],
[5, 6]])