当前位置 博文首页 > xpj8888的博客:非常清晰地对python模块Numpy进行介绍:矩阵运算

    xpj8888的博客:非常清晰地对python模块Numpy进行介绍:矩阵运算

    作者:[db:作者] 时间:2021-09-18 15:44

    参考:?http://www.shareblogs.top/1619/

    # 导入模块
    import numpy as np
    
    # (一) numpy模块的矩阵
    # 1.1 、创建矩阵
    print("-----------------创建1行5列的矩阵------------------")
    array1x5 = np.array([1, 3, 2, 10, 200])  # 创建1行5列的矩阵
    print(array1x5)  # 输出矩阵array1x5
    print(array1x5[1])  # 输出矩阵array1x5的第二个元素
    
    print("-----------------创建3行4列的矩阵-----------------")
    array3x4 = np.array([[11, 22, 33, 44], [4, 5, 6, 7], [111, 222, 333, 444]])  # 创建1行5列的矩阵
    print(array3x4)  # 输出矩阵array3x4
    print(array3x4[0])  # 输出矩阵array3x4的第一个数据
    
    # 1.2、矩阵元素的获取
    print("-----------------输出矩阵的某个元素------------------")
    array1x5_element3 = array1x5[3]
    print(array1x5_element3)
    print("-----------------输出矩阵的某组元素------------------")
    array3x4_array = array3x4[1]
    print(array3x4_array)
    
    # 1.3、矩阵元素的按条件截取
    print("-----------------输出矩阵大于3的元素------------------")
    array1x5_elementMoreThan3 = array1x5[array1x5 > 3]
    print(array1x5_elementMoreThan3)
    
    # 1.4、矩阵合并
    array3x4_copy = np.array([[11, 22, 33, 44], [4, 5, 6, 7], [111, 222, 333, 444]])
    print("-----------------输出两个矩阵按行合并后的元素: 即将第二个矩阵的每行,按行拼接在第一个矩阵的每行后面------------------")
    array3x4_combine_row = np.hstack([array3x4_copy, array3x4])
    print(array3x4_combine_row)
    print("-----------------输出两个矩阵按行合并后的元素:按列拼接------------------")
    array3x4_combine_column = np.vstack([array3x4_copy, array3x4])
    print(array3x4_combine_column)
    
    # 1.5 numpy模块的特殊矩阵
    # 2.1、 全零矩阵
    print("-----------------输出 float类型的1x10维度全零矩阵-----------------")
    zerosArray1x10 = np.zeros(10, float)
    print(zerosArray1x10)
    print("-----------------输出 int类型的3x10维度全零矩阵-----------------")
    zerosArray3x10 = np.zeros((3, 10), int)
    print(zerosArray3x10)
    print("-----------------输出 int类型的3x10维度全1矩阵-----------------")
    onesArray3x10 = np.ones((3, 10), int)
    print(onesArray3x10)
    
    # (三) numpy模块的函数
    # 3.1、三角函数
    print("-----------------输出角度的正弦弧度值----------------")
    angle30 = 30
    angleArray1x3 = np.array([0, 30, 60, 90])
    print(np.sin(angle30*np.pi/180))
    print(np.sin(angleArray1x3*np.pi/180))
    
    # 3.2、
    # (四) numpy模块的线性代数
    
    
    # (五) numpy模块的信号处理

    输出结果:

    -----------------创建1行5列的矩阵------------------
    [  1   3   2  10 200]
    3
    -----------------创建3行4列的矩阵-----------------
    [[ 11  22  33  44]
     [  4   5   6   7]
     [111 222 333 444]]
    [11 22 33 44]
    -----------------输出矩阵的某个元素------------------
    10
    -----------------输出矩阵的某组元素------------------
    [4 5 6 7]
    -----------------输出矩阵大于3的元素------------------
    [ 10 200]
    -----------------输出两个矩阵按行合并后的元素: 即将第二个矩阵的每行,按行拼接在第一个矩阵的每行后面------------------
    [[ 11  22  33  44  11  22  33  44]
     [  4   5   6   7   4   5   6   7]
     [111 222 333 444 111 222 333 444]]
    -----------------输出两个矩阵按行合并后的元素:按列拼接------------------
    [[ 11  22  33  44]
     [  4   5   6   7]
     [111 222 333 444]
     [ 11  22  33  44]
     [  4   5   6   7]
     [111 222 333 444]]
    -----------------输出 float类型的1x10维度全零矩阵-----------------
    [0. 0. 0. 0. 0. 0. 0. 0. 0. 0.]
    -----------------输出 int类型的3x10维度全零矩阵-----------------
    [[0 0 0 0 0 0 0 0 0 0]
     [0 0 0 0 0 0 0 0 0 0]
     [0 0 0 0 0 0 0 0 0 0]]
    [[1 1 1 1 1 1 1 1 1 1]
     [1 1 1 1 1 1 1 1 1 1]
     [1 1 1 1 1 1 1 1 1 1]]
    -----------------输出角度的正弦弧度值----------------
    0.49999999999999994
    [0.        0.5       0.8660254 1.       ]
    
    Process finished with exit code 0
    

    ?

    cs