资讯专栏INFORMATION COLUMN

简单瞅瞅 numpy库transpose函数

big_cat / 2095人阅读

摘要:写在前面接我的上一篇博客,嘿嘿应该能看懂吧,如果数组的维度懂了那就好理解了代码说话就是转置的意思,函数返回按你指定的方式转置的矩阵举个例子感性理解一下此处用面向对象编程也可以你可能已经明白了,他按照参数你给定的顺序类进行转置就是将第二维和第

写在前面

接我的上一篇博客, 嘿嘿, 应该能看懂吧,如果numpy数组的维度懂了那就好理解transpose

代码说话

transpose就是转置的意思,函数返回按你指定的方式转置的矩阵

np.transpose(narray, axis=None)

举个例子感性理解一下:

>>> a = np.array([[[1], [2]], [[3], [4]], [[5], [6]]])
array([[[1],
        [2]],

       [[3],
        [4]],

       [[5],
        [6]]])
>>> a.transpose(0, 1, 2) # 此处用面向对象编程也可以
array([[[1],
        [2]],

       [[3],
        [4]],

       [[5],
        [6]]])
>>> a.transpose(0, 2, 1)
array([[[1, 2]],

       [[3, 4]],

       [[5, 6]]])

你可能已经明白了,他按照axis参数——你给定的顺序类进行转置
a.transpose(0, 2, 1)就是将第二维和第三维转置

   [[1]
    [2]]

转置为:

[[1, 2]]

你可能会为我为啥不是:

[[1], [2]]

这样的话,又凭空增加了一个维度,(最后一维应该是常数那一维)
所以,如果是a.transpose(1, 0, 2)
则是:

array([[[1],
        [3],
        [5]],

       [[2],
        [4],
        [6]]])
技巧

可能比较难想,技巧的话

正视,你 要交换的那两维组成的平面(目光与该平面垂直),接着,将该平面转置,另一维度不变

array.shape也行,原来是(3, 2, 1),若执行a.transpose(1, 0, 2),则shape(2, 3, 1)
可以参考:https://blog.csdn.net/Heartho...

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/45249.html

相关文章

  • 【数据科学系统学习】Python # 数据分析基本操作[一] numpy

    摘要:提供了使我们能够快速便捷地处理结构化数据的大量数据结构和函数。结构化数据,例如多维数据矩阵表格行数据,其中各列可能是不同的类型字符串数值日期等。基础数组和矢量计算高性能科学计算和数据分析的基础包。 本篇内容为整理《利用Python进行数据分析》,博主使用代码为 Python3,部分内容和书本有出入。 利用 Python 进行科学计算的实用指南。本书重点介绍了用于高效解决各种数据分析问...

    wushuiyong 评论0 收藏0
  • 深度神经网络原理与实践

    摘要:理论基础什么是神经网络我们知道深度学习是机器学习的一个分支,是一种以人工神经网络为架构,对数据进行表征学习的算法。深度神经网络中的深度指的是一系列连续的表示层,数据模型中包含了多少层,这就被称为模型的深度。 理论基础 什么是神经网络 我们知道深度学习是机器学习的一个分支,是一种以人工神经网络为架构,对数据进行表征学习的算法。而深度神经网络又是深度学习的一个分支,它在 wikipedia...

    刘明 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<