1 import numpy as np
2 rand = np.random.RandomState(42)
3
4 x = rand.randint(100, size=10)
5 print(x)

[51, 92, 14, 71, 60, 20, 82, 86, 74, 74]

获取元素:

[x[3], x[7], x[2]]

[71, 86, 14]

#  通过传递索引的单个列表或数组来获取元素ind = [3, 7, 4]
x[ind]

array([71, 60, 86])

利用花哨的索引,结果的形状与索引数组的形状一致,而不是 与被索引数组的形状一致:

ind = np.array([[3, 7], [4, 5]])
x[ind]

array([[71, 86],[60, 20]])

花哨的索引对多个维度也适用。

花哨的索引返回的值反映的是广播后的索引数组的形状,而不是被索引数组的形状。

In [12]: X = np.arange(12).reshape((3, 4))In [13]: X
Out[13]:
array([[ 0,  1,  2,  3],[ 4,  5,  6,  7],[ 8,  9, 10, 11]])In [14]: row = np.array([0, 1, 2])In [15]: col = np.array([2, 1, 3])In [16]: X[row, col]
Out[16]: array([ 2,  5, 11]) #  第一个值是X[0, 2], 第二个值是X[1, 1]In [17]: X[row[:, np.newaxis], col]
Out[17]:
array([[ 2,  1,  3],[ 6,  5,  7],[10,  9, 11]])In [18]: row[:, np.newaxis] * col
Out[18]:
array([[0, 0, 0],[2, 1, 3],[4, 2, 6]])In [19]: row * col
Out[19]: array([0, 1, 6])In [20]: X[np.array([0, 1, 2]), np.array([2, 1, 3])]
Out[20]: array([ 2,  5, 11])In [22]: X[np.array([0, 1, 2])[:, np.newaxis], np.array([2, 1, 3])]
Out[22]:
array([[ 2,  1,  3],[ 6,  5,  7],[10,  9, 11]])In [23]: np.array([0, 1, 2])[:, np.newaxis]
Out[23]:
array([[0],[1],[2]])

转载于:https://www.cnblogs.com/coodyz/p/10970069.html

python numpy花哨索引相关推荐

  1. dataframe,python,numpy 问题索引1

    # 找出只有赌场数据的账户 gp=data.groupby(['查询账号','场景标签'],as_index=True) tj=gp.size().reset_index()按查询账号和场景标签分组并 ...

  2. python numpy矩阵索引_Numpy中的矩阵索引

    索引后查看形状:In [295]: A=np.matrix([1,2,3]) In [296]: A.shape Out[296]: (1, 3) In [297]: A[0] Out[297]: m ...

  3. python numpy矩阵索引_python – Numpy中的矩阵索引

    索引后查看形状: In [295]: A=np.matrix([1,2,3]) In [296]: A.shape Out[296]: (1, 3) In [297]: A[0] Out[297]: ...

  4. 【Python语言基础】——Python NumPy 数组索引

    Python语言基础--Python NumPy 数组形状 文章目录 Python语言基础--Python NumPy 数组形状 一.Python NumPy 数组形状 一.Python NumPy ...

  5. dataframe,python,numpy 问题索引2

    20220330 print(frame3.isnull().any()) 找出存在空值的列 print("========================") print(fra ...

  6. python numpy矩阵索引_python-为什么scipy csr矩阵的行索引比numpy数组...

    我在下面演示的简短答案是,构造新的稀疏矩阵非常昂贵.开销很大,不依赖于行数或特定行中非零元素的数量. 稀疏矩阵的数据表示形式与密集阵列的数据表示形式完全不同.数组将数据存储在一个连续的缓冲区中,并有效 ...

  7. python numpy array索引_Python NumPy 数组索引

    1.访问数组元素 数组索引与访问数组元素相同. 您可以通过引用其索引号来访问数组元素. NumPy数组中的索引以0开头,这意味着第一个元素的索引为0,第二个元素的索引为1等. 例如: 从以下数组中获取 ...

  8. 【Numpy库】【花哨索引】用python做数据分析所必须掌握的基础库之一 _03_ 花式(花哨)索引_fancy indexing

    花哨索引          花式(哨)索引( Fancy indexing) 是一个NumPy术语, 它指的是利用整数数组进行索引.         花哨索引----传递的是索引数组,不是单个标量.花 ...

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

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

最新文章

  1. 解决app频繁更新方案
  2. python专科找工作难吗-本人小白,想学python,大专不知道好不好找工作?
  3. 线程安全且高效的单例
  4. extern c用法解析
  5. mysql contains函数_多属性、多分类MySQL模式设计
  6. OpenCV删除面积小的区域 实现图像二值化分割 标记连通区域
  7. Java多线程之线程通信之生产者消费者阻塞队列版
  8. 文献学习(part25)--Regularization Paths for Generalized Linear Models via Coordinate Descent
  9. 修改firefox的默认缩放比
  10. android 吐司服务中显示,android里的“吐司”
  11. C++ 链表结构的常用操作(单链表)
  12. 地理必修一三大类岩石_中图版高中地理(必修一)知识归纳——第二章
  13. 油猴-今日头条去广告脚本
  14. 408真题-2022
  15. [Android1.5]标签TabHost图片文字覆盖的问题
  16. 巴比特 | 元宇宙每日必读:在NFT领域卖铲子能有多赚钱?云厂商们认为这就像“发电厂”业务...
  17. 完整版卸载SQL Server2019
  18. 虚拟机安装Linux教程
  19. win10配置Java环境
  20. Linux ARM平台开发系列讲解(GMSL摄像头篇)1.2 MAX9296 GMSL链路配置

热门文章

  1. 2022社区小程序怎么做?社区小程序那个好?社区小程序有哪些?精准社区小程序?
  2. 软件的接口设计图_App软件开发的完整在线流程(一看就懂)
  3. STM32F103 低功耗停止模式与待机模式操作
  4. oracle index skip scan,索引跳跃式扫描(INDEX SKIP SCAN)
  5. 笔记整理3----Java语言高级(三)11 综合练习+12 面向对象-static变量 与 代码块+13 面向对象-继承与抽象类+14 面向对象-接口与多态+15 面向对象-包修饰符
  6. Python之def使用常犯错误总结
  7. DPO数据保护官 CISP-DSG注册数据安全治理专业人员
  8. sprintf的使用
  9. C#下没有注册类 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))
  10. 席卷一切的深度学习?