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