说到转置操作,顺便提及矩阵与数组的区别:
矩阵:数学里的概念,其元素只能是数值,这也是区别于数组的根本所在
数组:计算机中的概念,代表一种数据组织、存储方式,其元素可以是数字、也可以是字符
数组的转置操作,是借鉴了线性代数中矩阵的转置操作。将行与列对调,即第一行变成第一列…..或第一列变成第一行…..的操作即使转置操作。
1. 多维数组的转置
import numpy as nptest = 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()实现数组的转置例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。