【问题标题】:Whats the difference between frombuffer and fromiter in numpy?Why and when to use thesenumpy 中的 frombuffer 和 fromiter 有什么区别?为什么以及何时使用这些
【发布时间】:2019-09-25 05:50:05
【问题描述】:

frombuffer 和 fromiter 都用于创建 numpy 数组。但是为什么要使用这些函数

【问题讨论】:

  • 您的问题到底是什么?你读过官方文档吗?有什么不清楚的地方吗?
  • np.array 是最常见的数组构造函数。 fromiter 可以通过一些输入更快。 frombuffer 需要专门的输入。这些示例使用字节数组或字节串。如果bufferbuffer interface 对您来说意义不大,请不要花太多精力去理解frombuffer

标签: numpy numpy-ndarray


【解决方案1】:

frombuffer -: 用于将缓冲区解释为一维数组。

Full explain

例如-:

>>> s = b'hello world'
>>> np.frombuffer(s, dtype='S1', count=5, offset=6)
output -: array([b'w', b'o', b'r', b'l', b'd'], dtype='|S1')

>>> np.frombuffer(b'\x01\x02', dtype=np.uint8)
output -: array([1, 2], dtype=uint8)

fromiter -: 这是从可迭代对象创建一个新的一维数组

Full explain

例如-:

>>> iterable = (x*x for x in range(5))
>>> np.fromiter(iterable, float)
output -: array([  0.,   1.,   4.,   9.,  16.])

【讨论】:

    猜你喜欢
    • 2016-03-21
    • 2020-06-28
    • 1970-01-01
    • 2020-05-02
    • 2012-03-11
    • 1970-01-01
    • 2013-01-16
    • 1970-01-01
    相关资源
    最近更新 更多