美文网首页Python Quants我爱编程
numpy必知必会——ndarray

numpy必知必会——ndarray

作者: fasionchan | 来源:发表于2016-08-30 07:41 被阅读617次

简介

ndarray顾名思义,是一个用来存储多维数组的数据结构。

底层ndarray构造函数

现在,用ndarray创建一个(2, 3)二维数组,并命名为a。可以看到,a是一个数组,包含2个元素;每个元素分别又是一个数组,包含3个float。请注意,float元素的值是随机的,因为没有指定。

>>> a = np.ndarray(shape=(2, 3), dtype=float)
>>> a
array([[  6.91857857e-310,   6.91857857e-310,   4.78249221e-317],
       [  1.08552349e-316,   1.08552230e-316,   1.08552112e-316]])

接下来,我们可以用下标访问数组a,取出子数组。数组a维数为2,子数组维数则为1。

>>> a[0]
array([  6.91857857e-310,   6.91857857e-310,   4.78249221e-317])
>>> a[1]
array([  1.08552349e-316,   1.08552230e-316,   1.08552112e-316])

第二维只包含2个元素,因此当下标超出合法范围时,访问将报错。请注意,错误类型为IndexError

>>> a[2]
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: index 2 is out of bounds for axis 0 with size 2

同样地,通过下标可以访问子数组的元素,即取出浮点数。

>>> a[0][0]
6.9185785704028074e-310

高层接口

ndarray基础上,numpy提供了若干个高层构造函数,包括zerosempty等。

现在,使用zeros创建一个(2, 3, 4)三维数组。注意到,所有的值都初始化为0,而不是一堆没有意义的随机数值。

>>> np.zeros((2, 3, 4))
array([[[ 0.,  0.,  0.,  0.],
        [ 0.,  0.,  0.,  0.],
        [ 0.,  0.,  0.,  0.]],

       [[ 0.,  0.,  0.,  0.],
        [ 0.,  0.,  0.,  0.],
        [ 0.,  0.,  0.,  0.]]])

内存布局

相关文章

  • numpy必知必会——ndarray

    简介 ndarray顾名思义,是一个用来存储多维数组的数据结构。 底层ndarray构造函数 现在,用ndarra...

  • Numpy之创建 NumPy ndarray

    创建 NumPy ndarray NumPy 的核心是 ndarray,其中 nd 表示 n 维。ndarray ...

  • numpy.ndarray 常用属性和方法

    numpy.ndarray 常用属性和方法 numpy.ndarray 常用属性 ndarray.shape: 返...

  • Numpy之初识ndarray

    Numpy ndarray numpy的最重要特点就是其N维数组对象(ndarray)。 ndarray的可以对整...

  • 优秀参考文章--性能优化

    Android 性能优化必知必会Android 性能优化必知必会

  • Numpy之ndarray与matrix

    Numpy之ndarray与matrix 1. ndarray对象 ndarray是numpy中的一个N维数组对象...

  • numpy && pandas

    NumPy 二、ndarray的属性 4个必记参数: ndim:维度 shape:形状(各维度的长度) size:...

  • numpy怎么用,看完你就会了

    numpy支持的数据类型 1. list VS ndarray numpy 的核心是 ndarray 对象(num...

  • 2019-08-20

    NumPy - Ndarray 对象 NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。...

  • 2019-10-07

    NumPy - Ndarray 对象 NumPy 中定义的最重要的对象是称为 ndarray 的 N 维数组类型。...

网友评论

    本文标题:numpy必知必会——ndarray

    本文链接:https://www.haomeiwen.com/subject/ppsfettx.html