>>> np.unravel_index([22, 41, 37], (7,6))
 (array([3, 6, 6]), array([4, 5, 1]))
>>> np.unravel_index([31, 41, 13], (7,6), order='F')
 (array([3, 6, 6]), array([4, 5, 1]))
>>> np.unravel_index(1621, (6,7,8,9))
 (3, 1, 4, 1)

例子:
Consider a (6,7,8) shape array, what is the index (x,y,z) of the 100th element ?
>>> print np.unravel_index(100,(6,7,8))
(1, 5, 4)
解释:
给定一个矩阵,shape=(6,7,8),即3维的矩阵,求第n个元素的下标是什么?矩阵各维的下标从0开始

如果indices参数是一个标量,那么返回的是一个向量,维数=矩阵的维数,向量的值其实就是在矩阵中对应的下标。如6*7*8*9的矩阵,1621/(7*8*9)=3,(1621-3*7*8*9)/(8*9)=1,(1621-3*7*8*9-1*8*9)/9=4,(1621-3*7*8*9-1*8*9-4*9)=1。所以返回的向量为array(3,1,4,1)。
如果indices参数是一个向量的,那么通过该向量中值求出对应的下标。下标的个数就是矩阵的维数,每一维下标组成一个向量,所以返回的向量的个数=矩阵维数。如7*6的矩阵,第22个元素是 3*6+4,所以对应的下标是(3,4),那么返回的值是 array([3]),array([4])。

转载于:https://www.cnblogs.com/yangxiaoling/p/10266208.html

np.unravel_index相关推荐

  1. np.unravel_index()

    np.unravel_index(indices, shape, order = 'C') 一句话概括:求出数组某元素(或某组元素)拉成一维后的索引值在原本维度(或指定新维度)中对应的索引 官网给出的 ...

  2. numpy 中 np.unravel_index 使用

    最近看到 np.unravel_index 这个函数,不知道这个函数是什么作用,上网查,网上说的也不是很明白,于是自己研究终于算是大体看懂了: 完整函数定义:unravel_index(indices ...

  3. python np.unravel_index(indices, dims, order)

    np.unravel_index(indices, dims, order)的作用:下标从0开始 返回7行6列矩阵中的第22个.第41个.第37个元素的下标(例:22 = 3*6+4,故下标为(3,4 ...

  4. python numpy np.argsort()(返回将对数组进行排序的索引)(不懂区别?)

    from numpy\core\fromnumeric.py @array_function_dispatch(_argsort_dispatcher) def argsort(a, axis=-1, ...

  5. python numpy np.argmax(a, axis=None, out=None) (按给定轴位比较,返回第一个最大值索引【下标】)

    def argmax(a, axis=None, out=None):"""Returns the indices of the maximum values along ...

  6. numpy.unravel_index

    官方文档 numpy.unravel_index(indices, shape, order='C') 将平面索引或平面索引数组转换为坐标数组的元组 参数 indices : array_like 一 ...

  7. numpy.outer、numpy.hanning、numpy.unravel_index学习总结

    np.outer.np.hanning.np.unravel_index学习总结 1.numpy.unravel_index() 2.numpy.outer() 3.numpy.hanning() 最 ...

  8. 强化学习(三) - Gym库介绍和使用,Markov决策程序实例,动态规划决策实例

    强化学习(三) - Gym库介绍和使用,Markov决策程序实例,动态规划决策实例 1. 引言 在这个部分补充之前马尔科夫决策和动态规划部分的代码.在以后的内容我会把相关代码都附到相关内容的后面.本部 ...

  9. 深度有趣 | 27 服饰关键点定位

    简介 介绍如何使用CPM(Convolutional Pose Machines)实现服饰关键点定位 原理 关键点定位是一类常见而有用的任务,某种意义上可以理解为一种特征工程 人脸关键点定位,可用于人 ...

最新文章

  1. ThinkPHP的标签制作
  2. 学习Windows2008——设计活动目录
  3. Python入门 学习笔记
  4. datagrid行内编辑时为datetimebox
  5. bidirectional pathtracing算法学习
  6. mysql服务器权限说明,MySQL用户权限管理详解
  7. 自动添加html结束标志,HTML:包含或排除可选的结束标记?
  8. HDU 5794:A Simple Chess(Lucas + DP)
  9. 使用yum命令安装mysql_Linux Centos 下使用yum 命令安装mysql实现步骤
  10. 实用常识 | HTML嵌入处理MARKDOWN合并单元格
  11. Java String类的intern()方法
  12. 安卓9开机 bootanimation.zip_小米手机如何从安卓10退回安卓9系统,不丢失传感器,不变砖...
  13. 第三步_安装jdk环境
  14. stm32之GPIO学习笔记
  15. Tiny服务的开发配套的工具来了
  16. leetcode·单调栈
  17. 联想笔记本连不上手机热点_笔记本电脑连接不上手机热点该怎么解决?
  18. Hackthebox:Devel Walkthrough
  19. 计算一阶导数的四阶中心差分格式
  20. 怎么压缩word文档大小?

热门文章

  1. VUE制作周排班样式
  2. 【神奇代码岛】【JAVA script】私聊代码教程
  3. SEO优化知识点以及思路学习笔记
  4. twaver html5 如何设置节点不可拖动
  5. 德馨食品冲刺A股上市:计划募资9亿元,林志勇为实际控制人
  6. 芯片无忧的使用教程,使用芯片无忧查看U盘参数
  7. Android红外摇控与remote.conf
  8. 强化学习的基本求解方法(二)
  9. AutoSAR系列讲解(深入篇)14.3-Mcal Dio配置
  10. 我以为我对Vue很了解,直到我遇到了阿里的面试官