Numpy之ndarry

作者: 木子兜兜 | 来源:发表于2018-12-30 18:12 被阅读5次

    这周因为考科三耽误了学习,希望能借元旦假期赶上进度。

    列表:数据类型可以不同 e.g. 3.14, ‘pi’,’3.141’,[3.141,3.14]

    数组:数据类型相同 e.g. 3.14,3.141,3.134,3.12

    Numpy是一个开源的python科学计算基础库,ndarray是其一个强大的N维数据对象

    Python已经有了列表类型,为什么还需要一个数组对象呢?

    举个例子,现在有AB两个一维数组,要计算A^2+B^3,如果直接计算的话,我们元素间需要使用循环运算for i in range(len(a)),但是用numpy的ndarray的话不需要使用循环,使一维数据更像单个数据,可以直接计算。

    ndarray数组一般要求所有元素类型相同,数组下标从0开始。

    np.array()生成一个ndarray,ndarray的别名是array

    np.array()输出成[]形式,元素由空格分割

    ndarray对象的属性如下:

    属性的使用如下:

    例如对于 a=np.array([[0,1,2,3,4],

                                    [5,6,7,8,9]])

    a.ndim==>2

    a.shape==>(2,5)

    a.size==>10

    a.dtype==>dtype(‘int32’)

    a.itemsize==>4

    如果是非同质的ndarray对象

    例如x=np.array([[0,1,2,3,4],

                            [5,6,7,8]])

    x.shape==>(2,)

    x.dtype==>dtype(‘0’)

    x.itemsize==>4

    x.size==>2

    非同质ndarray对象无法发挥Numpy的优势,应该尽量避免使用

    ndarray的创建方法1.从python中的列表,元组等类型创建

    2.使用Numpy中函数创建,如:arange,ones,zeros等

    一维数组的索引和切片与python的列表类似

    e.g.a=np.array([9,8,7,6,5])

    a[2]==>7

    a[1:4:2]==>([8,6])

    多维数组的索引,每个维度一个索引值,逗号分割

    e.g.a=np.arrage(24).reshape((2,3,4))

    a==>array([[[0,1,2,3],

                      [4,5,6,7],

                      [8,9,10,11]],

                      [[12,13,14,15],

                      [16,17,18,19],

                      [20,21,22,23]]])

    a[1,2,3]==>23

    a[0,1,2]==>6

    a[-1,-2,-3]==>17

    未完待续

    (没有电脑实在不方便,其他内容和代码晚点再附上吧~)

    相关文章

      网友评论

        本文标题:Numpy之ndarry

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