对numpy下的轴交换transpose和swapaxes的示例解读

如下所示:

解读:

transpose( ) 方法的参数是一个 由 轴编号(轴编号自0 开始) 序列构成的 元组。

开始时,数组的轴编号序列是默认从 0开始的 :0,1,2,,

坐标的顺序也是这个轴编号的顺序,(0,1,2)

当使用 transpose 时候,轴编号的顺序变成了 (1,0,2)

说明 0号轴和1号轴的顺序变了,

那么,坐标的顺序也应该变了,

例如 元素 8:

开始时:根据轴顺序 0,1,2。他的坐标是 (1,0,0)

现在,根据周顺序 1,0,2;他的坐标是(0,1,0).

swapaxes()就更简单了。

参数是交换的两个轴号(自0开始)

以上这篇对numpy下的轴交换transpose和swapaxes的示例解读就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

(0)

相关推荐

  • 详解Numpy数组转置的三种方法T、transpose、swapaxes

    Numpy是高性能科学计算和数据分析的基础包,里面包含了许多对数组进行快速运算的标准数学函数,掌握这些方法,能摆脱数据处理时的循环. 1.首先数组转置(T) 创建二维数组data如下: 进行矩阵运算时,经常要用数组转置,比如计算矩阵内积X^T X.这时就需要利用数组转置,如下: 2.轴对换之transpose 对于高维数组,可以使用轴对换来对多个维度进行变换. 这里创建了一个三维数组,各维度大小分别为2,3,4. transpose进行的操作其实是将各个维度重置,原来(2,3,4)对应的是(0,

  • Numpy中转置transpose、T和swapaxes的实例讲解

    利用Python进行数据分析时,Numpy是最常用的库,经常用来对数组.矩阵等进行转置等,有时候用来做数据的存储. 在numpy中,转置transpose和轴对换是很基本的操作,下面分别详细讲述一下,以免自己忘记. In [1]: import numpy as np In [2]: arr=np.arange(16).reshape(2,2,4) In [3]: arr Out[3]: array([[[ 0, 1, 2, 3], [ 4, 5, 6, 7]], [[ 8, 9, 10, 11

  • 对numpy中的transpose和swapaxes函数详解

    transpose() 这个函数如果括号内不带参数,就相当于转置,和.T效果一样,而今天主要来讲解其带参数. 我们看如下一个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

  • 对numpy下的轴交换transpose和swapaxes的示例解读

    如下所示: 解读: transpose( ) 方法的参数是一个 由 轴编号(轴编号自0 开始) 序列构成的 元组. 开始时,数组的轴编号序列是默认从 0开始的 :0,1,2,, 坐标的顺序也是这个轴编号的顺序,(0,1,2) 当使用 transpose 时候,轴编号的顺序变成了 (1,0,2) 说明 0号轴和1号轴的顺序变了, 那么,坐标的顺序也应该变了, 例如 元素 8: 开始时:根据轴顺序 0,1,2.他的坐标是 (1,0,0) 现在,根据周顺序 1,0,2:他的坐标是(0,1,0). sw

  • Python numpy下几种fft函数的使用方式

    目录 fft rfft fftfreq ifft irfft 总结 numpy下fft模块提供了丰富的fft函数,几种常用的在这里记录一下使用方式 fft 输入实数samples,如果输入的sample是带虚数部分的话,虚数部分会被默认删除. t=np.arange(12) b=np.sin(t) print(b) print("sum(b)=", np.sum(b)) s = np.fft.fft(b) print(s) 运行结果截图如下 从图中可以看到, [0]是一个实数,实数部分

  • python下实现二叉堆以及堆排序的示例

    堆是一种特殊的树形结构, 堆中的数据存储满足一定的堆序.堆排序是一种选择排序, 其算法复杂度, 时间复杂度相对于其他的排序算法都有很大的优势. 堆分为大头堆和小头堆, 正如其名, 大头堆的第一个元素是最大的, 每个有子结点的父结点, 其数据值都比其子结点的值要大.小头堆则相反. 我大概讲解下建一个树形堆的算法过程: 找到N/2 位置的数组数据, 从这个位置开始, 找到该节点的左子结点的索引, 先比较这个结点的下的子结点, 找到最大的那个, 将最大的子结点的索引赋值给左子结点, 然后将最大的子结点

  • Flutter 实现下拉刷新上拉加载的示例代码

    本文介绍了Flutter 实现下拉刷新上拉加载的示例代码,分享给大家,具体如下: 效果图 使用方法 添加依赖 dependencies: pull_to_refresh: ^1.5.7 导入包 import 'package:pull_to_refresh/pull_to_refresh.dart'; 页面代码样例 class _MyHomePageState extends State<MyHomePage> { List<String> items = ["1&quo

  • elementUI实现下拉选项加多选框的示例代码

    目录 下拉加多选框 升级-添加全部选项 需求改版完善 因产品需求和UI样式调整,和element自带的下拉多选有冲突,索性自己尝试修改如下: 下拉加多选框 效果如下图: 封装如下: <template> <div class="select-checked"> <!-- 下拉加多选框 --> <el-select v-model="value" multiple placeholder="请选择" :po

  • numpy下的flatten()函数用法详解

    flatten是numpy.ndarray.flatten的一个函数,其官方文档是这样描述的: ndarray.flatten(order='C') Return a copy of the array collapsed into one dimension. Parameters:   order : {'C', 'F', 'A', 'K'}, optional 'C' means to flatten in row-major (C-style) order. 'F' means to f

  • Swift快速集成下拉刷新和上拉加载更多示例代码

    ESPullToRefresh ESPullToRefresh是一个非常易于开发者使用的下拉刷新和加载更多组件.通过一个UIScrollView的扩展,可以轻松为UIScrollView的所有子类添加下拉刷新功能. 如果你想定制组件的UI样式,只要实现指定的协议方法即可.Github地址 如何安装 使用CocoaPods pod "ESPullToRefresh" 手动安装 git clone https://github.com/eggswift/pull-to-refresh.gi

  • Linux下如何对ISO文件编辑的方法示例

    前言 我们知道 Windows下有类似 UltraISO的这样的软件可以用来编辑 ISO文件,可引导 ISO也没有问题.近来在 Linux下玩的比较多,正好要改个 ISO,于是就开始找 Linux下有没有类似的软件. Ubuntu软件中心里有一款叫 ISOMaster的软件,可以创建和修改 ISO文件. $ sudo apt-get install isomaster 如图,我打开一个 ISO文件以后就可以直接用过右键菜单来修改 ISO中的文本内容. ISOMaster 好了,你是不是觉得可以通

随机推荐