当前位置 主页 > 网站技术 > 代码类 >

    numpy.transpose()实现数组的转置例子

    栏目:代码类 时间:2019-12-02 18:08

    说到转置操作,顺便提及矩阵与数组的区别:

    矩阵:数学里的概念,其元素只能是数值,这也是区别于数组的根本所在

    数组:计算机中的概念,代表一种数据组织、存储方式,其元素可以是数字、也可以是字符

    数组的转置操作,是借鉴了线性代数中矩阵的转置操作。将行与列对调,即第一行变成第一列…..或第一列变成第一行…..的操作即使转置操作。

    1. 多维数组的转置

    import numpy as np
    
    test = np.array([[12,4,7,0],[3,7,45,81]])
    test
    
    # 以下为test输出的结果
    array([[12, 4, 7, 0],
        [ 3, 7, 45, 81]])
    
    # 对test进行转置操作
    test.transpose()
    
    # 转置后得到的结果为
    array([[12, 3],
        [ 4, 7],
        [ 7, 45],
        [ 0, 81]])
    

    2. 一维数组的转置

    test = np.array([12,4,7,0])
    test.shape
    
    # test.shape的结果
    (4,)
    
    # 以下为test输出的结果
    array([12, 4, 7, 0])
    
    # 对test进行转置操作
    result = test.transpose()
    
    # 转置后得到的结果为
    array([12, 4, 7, 0])
    test.shape
    
    # 一维数组(列向量)转置后的长度
    (4,)
    

    所以,对一维列向量进行转置,得到的还是一维列向量,并没有发生任何变化。经实践,这时候应借助shape属性来完成转置。详细见以下:

    result.shape=(1,4)
    result
    
    # 这时输出result的值如下,对比与上面一个code框内的result值
    array([[12, 4, 7, 0]])
    

    这时候输出的result就是一个一行四列的一维数组了。

    以上这篇numpy.transpose()实现数组的转置例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持IIS7站长之家。