zoukankan      html  css  js  c++  java
  • python中transpose和swapaxes函数

    1.transpose() 这个函数如果括号内不带参数,就相当于转置,和.T效果一样,而今天主要来讲解其带参数。

     eg: numpy的数组: arr=np.arange(16).reshape((2,2,4)) arr= array([[[ 0,  1,  2,  3],     [ 4,  5,  6,  7]],    [[ 8,  9, 10, 11],     [12, 13, 14, 15]]])

    那么有:

    >>>arr.transpose(2,1,0)
      array([[[ 0,  8],
             [ 4, 12]],
    
            [[ 1,  9],
             [ 5, 13]],
    
            [[ 2, 10],
             [ 6, 14]],
    
            [[ 3, 11],
             [ 7, 15]]])

         因为arr这个数组有三个维度,三个维度的编号对应为(0,1,2),但是使用了transpose(2,1,0)之后,第一个维度就是原本的第三维度,第二维度不变,第三维度是原本的第一维度。

      举个栗子: 

                                       原坐标             转换后

                      >>>  1         [0,0,1]             [1,0,0]

                      >>>  2         [0,0,2]             [2,0,0]

          swapaxes接受一对轴编号(维度编号),比如:

    arr.swapaxes(2,1)  #就是将第三个维度和第二个维度交换
    array([[[ 0,  4],
            [ 1,  5],
            [ 2,  6],
            [ 3,  7]],
    
           [[ 8, 12],
            [ 9, 13],
            [10, 14],
            [11, 15]]]
  • 相关阅读:
    静态成员变量
    设计模式:空对象模式(Null Object Pattern)
    超详细LAMP环境搭建
    WCF 学习笔记之双工实现
    new和instanceof的内部机制
    C#开源磁盘/内存缓存引擎
    C++设计模式-Flyweight享元模式
    Javascript内存泄漏
    流量计数器
    运用Mono.Cecil 反射读取.NET程序集元数据
  • 原文地址:https://www.cnblogs.com/MMMMzoe/p/7274349.html
Copyright © 2011-2022 走看看