NumPy从现有数据创建数组示例

本文概述

  • numpy.asarray
  • numpy.frombuffer
  • numpy.fromiter
【NumPy从现有数据创建数组示例】NumPy为我们提供了一种使用现有数据创建数组的方法。
numpy.asarray该例程用于通过使用列表或元组形式的现有数据来创建数组。在需要将python序列转换为numpy数组对象的情况下, 此例程很有用。
下面给出了使用asarray()例程的语法。
numpy.asarray(sequence, dtype = None, order = None)

它接受以下参数。
  1. 序列:这是要转换为python数组的python序列。
  2. dtype:它是数组每个项目的数据类型。
  3. order:可以设置为C或F。默认值为C。
示例:使用列表创建numpy数组
import numpy as npl=[1, 2, 3, 4, 5, 6, 7]a = np.asarray(l); print(type(a))print(a)

输出
< class 'numpy.ndarray'> [1 2 3 4 5 6 7]

示例:使用Tuple创建一个numpy数组
import numpy as npl=(1, 2, 3, 4, 5, 6, 7)a = np.asarray(l); print(type(a))print(a)

输出
< class 'numpy.ndarray'> [1 2 3 4 5 6 7]

示例:使用多个列表创建一个numpy数组
import numpy as npl=[[1, 2, 3, 4, 5, 6, 7], [8, 9]]a = np.asarray(l); print(type(a))print(a)

输出
< class 'numpy.ndarray'> [list([1, 2, 3, 4, 5, 6, 7]) list([8, 9])]

numpy.frombuffer此函数用于通过使用指定的缓冲区来创建数组。下面给出了使用此缓冲区的语法。
numpy.frombuffer(buffer, dtype = float, count = -1, offset = 0)

它接受以下参数。
  • 缓冲区:它表示暴露缓冲区接口的对象。
  • dtype:代表返回的数据类型数组的数据类型。默认值为0。
  • count:代表返回的ndarray的长度。默认值为-1。
  • 偏移量:代表读取的起始位置。默认值为0。
例子
import numpy as npl = b'hello world'print(type(l))a = np.frombuffer(l, dtype = "S1")print(a)print(type(a))

输出
< class 'bytes'> [b'h' b'e' b'l' b'l' b'o' b' ' b'w' b'o' b'r' b'l' b'd']< class 'numpy.ndarray'>

numpy.fromiter此例程用于通过使用可迭代对象来创建ndarray。它返回一维ndarray对象。
语法在下面给出。
numpy.fromiter(iterable, dtype, count = - 1)

它接受以下参数。
  1. 可迭代:表示可迭代对象。
  2. dtype:代表结果数组项的数据类型。
  3. count:代表要从数组缓冲区中读取的项目数。
例子
import numpy as nplist = [0, 2, 4, 6]it = iter(list)x = np.fromiter(it, dtype = float)print(x)print(type(x))

输出
[0. 2. 4. 6.]< class 'numpy.ndarray'>

    推荐阅读