• Numpy学习一:ndarray数组对象


    NumPy是Python的一个高性能科学计算和数据分析基础库,提供了功能强大的多维数组对象ndarray
    jupyter notebook快速执行代码的快捷键:鼠标点击选中要指定的代码框,Shift + Enter组合键直接执行代码框中的全部代码。              Alt + Enter组合键执行完代码框中的代码在代码框的下面再添加一个空代码框。

    1、创建数组

    #引入numpy,并重命名为np,方便使用
    import numpy as np

    1.1、使用numpy内置的array函数创建数组

    #创建一维数组
    arr1 = np.array([1,2,3])
    print(arr1)

    结果:[1 2 3]

    #创建二维数组
    arr2 = np.array([[1,2,3],[4,5,6]])
    print(arr2)

    结果:[[1 2 3] [4 5 6]]

    1.2、使用arange函数创建数组

    #使用arange函数创建包含0到9 十个数字的一维数组

    #注意:arange函数返回的数组默认第一个元素是0,结束元素是指定的数值前一个数字9
    arr_1 = np.arange(10) 
    print(arr_1)

    结果:[0 1 2 3 4 5 6 7 8 9]

    #通过arange函数设置“开始、结束、步长”三个参数创建包含1到10所有奇数的一维数组

     #从1开始,到10前一位结束,步长为2表示相邻两个元素的差值是2
    print(arr_2)
    arr_2 = np.arange(1,10,2)

    结果:[1 3 5 7 9]

    1.3、全0、全1数组

    #使用zeros函数创建一个包含10个全0数字的一维数组
    z1 = np.zeros(10)
    print(z1)

    结果:[ 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]

    #创建3行4列的二维全0数组
    z2 = np.zeros((3,4))
    print(z2)

    结果:[[ 0. 0. 0. 0.] [ 0. 0. 0. 0.] [ 0. 0. 0. 0.]]

    #创建全1数组
    o1 = np.ones(5)
    print(o1)

    结果:[ 1. 1. 1. 1. 1.]

    #创建3行4列全1二维数组
    o2 = np.ones((3,4))
    print(o2)

    结果:[[ 1. 1. 1. 1.] [ 1. 1. 1. 1.] [ 1. 1. 1. 1.]]

    2、数组的属性方法

    #查看数组o2各维度的大小
    o2.shape
    #运行结果是一个元组(3,4)表示第1维的大小是3(也是就是3行),第2维的大小是4(也就是4列)

    结果:(3, 4)

    #查看o2第1维的大小(行数)
    o2.shape[0]

    结果:3

    #查看o2第2维的大小(列数)
    o2.shape[1]

    结果:4

    #查看数组中元素类型
    o2.dtype

    结果:dtype('float64')

    #类型转换函数astype,数组元素由float64类型转换成int32类型,并返回一个新的数组o2_1,原数组o2元素类型不变
    o2_1 = o2.astype(np.int32)

    #o2数组类型不变
    o2.dtype

    结果:dtype('float64')

    #o2_1数组中元素类型为int32
    o2_1.dtype

    结果:dtype('int32')

    #创建字符串类型数组
    arr_string = np.array(["12.78","23.15","34.5"])
    arr_string.dtype 

    结果:dtype('<U5')#dtype('<U5')表示字符串不超过5位

    #将字符串数组转换成浮点类型数组
    arr_float = arr_string.astype(np.float64)
    print(arr_float)

    结果:[ 12.78 23.15 34.5 ]

    #float类型数组转换成整型数组,小数部分将会被截断
    arr_int = arr_float.astype(np.int32)
    print(arr_int)

    结果:[12 23 34]

    #numpy自动识别元素类型
    np.array([1,2,3]).dtype

    结果:dtype('int32')

  • 相关阅读:
    codeforces 869E. The Untended Antiquity(二维树状数组,随机化)
    bzoj 3083: 遥远的国度(树上换根操作,树剖+询问整个子树)
    hdu 5534 Partial Tree(dp+降唯,好题)
    AtCoder Regular Contest 075 E
    hihocoder 1387 A Research on "The Hundred Family Surnames"(树,lca,求同一颜色的直径)
    hdu 5458 Stability(生成树,树链剖分,好题)
    推荐一套个人ui组件库
    回望2019,期盼2020
    如何从产品的角度对待自己的博客
    致一名迷茫的我
  • 原文地址:https://www.cnblogs.com/sl0309/p/10354345.html
Copyright © 2020-2023  润新知