numpy二维数组-从指定索引中获取N个元素

Binyamin Even

假设我有一个二维的numpy数组:

mat=[[5,5,3,6,3],
     [3,2,7,8,1],
     [7,5,5,2,0]]

和索引向量:

vec=[3,1,2]

我需要从相应的索引中提取3个元素。例如,向量中与矩阵第一行相对应的第一个元素是3。因此,我需要从第一行的索引3(从0开始)中取3个元素,即6。所以我需要的是[6,3,None]

最终输出应为:

[[6,3,None],
 [2,7,8],
 [5,2,0]]

我尝试take使用花哨的索引,但都无法获得想要的输出。

任何帮助,将不胜感激!

阿南达

你可以这样做 -

import numpy as np

mat=np.array([[5,5,3,6,3],
            [3,2,7,8,1],
            [7,5,5,2,0]])

mat = np.hstack((mat, np.ones((3,3))*np.nan))

vec=np.array([3,1,2])
idx = vec[:, None] + np.arange(0, 3)
print(mat[np.arange(3)[:,None], idx])

给-

[[ 6.  3. nan]
 [ 2.  7.  8.]
 [ 5.  2.  0.]]

首先,只需在原始数组上附加三列infNone或某物。然后,vec通过添加从0开始的连续整数,从中创建一个2d索引数组,并简单地索引原始矩阵。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

二维numpy数组中的阈值

来自分类Dev

减去指定二维数组 numpy 中的元素

来自分类Dev

获取二维 numpy 数组中最大点的索引

来自分类Dev

通过索引二维数组来填充numpy数组

来自分类Dev

二维numpy数组中公共元素的成对计数

来自分类Dev

基于索引的二维numpy数组排列numpy二维数组的numpy方法是什么?

来自分类Dev

在numpy二维数组中获取与零相邻的所有元素的索引

来自分类Dev

如何从json元素快速创建二维numpy数组?

来自分类Dev

在二维numpy数组中查找匹配的行

来自分类Dev

在二维Numpy数组中填写重叠的边界框

来自分类Dev

如何在二维 numpy 数组中设置值?

来自分类Dev

从指定坐标和方向的二维数组中获取n个元素

来自分类Dev

二维数组索引

来自分类Dev

用另一个二维数组中的列替换二维 numpy 数组中的列

来自分类Dev

根据一维数组的索引和值构造二维numpy数组

来自分类Dev

从二维数组获取索引

来自分类Dev

numpy获取二维数组中重复元素的确切参数

来自分类Dev

使用掩码从二维数组中获取 numpy 元素的平均值

来自分类Dev

在python中索引二维数组

来自分类Dev

如何从熊猫数据框中获取一个二维的numpy数组?-错误的形状

来自分类Dev

二维数组中的元素总数

来自分类Dev

从二维数组中检索元素

来自分类Dev

二维数组中的元素丢失?

来自分类Dev

置换二维数组中的元素

来自分类Dev

numpy:获取二维数组最小值的列和行索引

来自分类Dev

从一维获取二维数组索引

来自分类Dev

Numpy:将一维数组(行)添加到 Numpy Python 中的空二维数组

来自分类Dev

如何用单个元素替换二维 numpy 数组中重复的连续元素

来自分类Dev

索引二维数组/列表

Related 相关文章

热门标签

归档