问题标签 [numpy-indexing]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
31 浏览

python - 如何索引由某个轴上的索引给出的多维数组?

假设我有一个Ashape的 4d 数组(D0, D1, D2, D3)。我有一个Bshape的一维数组(D0,),其中包括我在轴 2 处需要的索引。

实现我需要的简单方法:

所以,我的问题是如何用 numpy API 快速实现它?

0 投票
1 回答
34 浏览

numpy - 用另一个数组操作一个 numpy 数组

我正在用括号和':'来做我的头,同时试图用另一个索引做二维索引所以如果有人能理顺我,我会很高兴

我有一个灰度图像 BlurredFlip 形状是:(480, 640) 然后我用过

它创建了一个一维数组,毫不奇怪,第一行具有每列的最小值,例如

现在我想将超出此行值的每个像素设置为黑色 - 在 python 中不使用循环相当于

在伪代码中

我似乎无法像这样两次引用该列。但我可以告诉你很多方法来获得无用的错误“TypeError:只有整数标量数组可以转换为标量索引”

感谢您的任何启发:)

0 投票
3 回答
52 浏览

python - 为什么numpy数组中相同索引选择的输出存在差异

假设我有一个看起来像这样的二维 NumPy 数组,我想提取左下角的正方形(4x4):

为什么这种方式有区别:

这样:

我说这是有区别的,因为我在尝试这样做时得到了不同的输出:

如果我的问题错了,你能告诉我为什么吗?

提前致谢!

0 投票
0 回答
42 浏览

python - Numpy 使用多维数组来索引一维数组

我不明白下面的代码,即它的最后一部分。

有人可以解释我如何使用二维数组(coord_norms)索引一维数组(bin_count)吗?我确实了解 numpy 广播和高级索引,但想了解在这种情况下幕后发生的事情。bin_count 是否首先被广播为与 coord_norms 相同的形状?Python 如何分配 new_data 中的值?

0 投票
1 回答
101 浏览

python - 如何以向量化方式numpy多次索引多维数组?

我正在尝试在 numpy 中索引一个多维数组(4 维)。数组的形状为 (125,125,125,3)。我有 3 个独立的 2D 索引数组列表。这些列表的大小分别为 (N,4)、(M,4) 和 (1,4)。这 3 个单独的列表代表我试图索引的 4D 数组中的行、列和深度值。例如考虑以下内容:

我想使用、weights和 中的行、列和深度索引数组的每个可能组合进行索引。例如,如果我在每个索引矩阵中取第一行,这意味着我想选择 rows 、 columns和 depth中的值。我总是想选择 4 维中的所有元素。这意味着我本质上是在选择一个.ixiyiz[0,1,2,3][2,3,4,5][1,2,3,4]weightsweights(4,4,4,3)weights

现在,我已经通过使用以下代码使用循环索引来实现这一点

我的最终目标是w尽可能快地构造形状为 (N,M,1,4,4,4,3) 的多维数组。这部分代码将运行多次,因此如果有一种使用内置 numpy 函数的矢量化方式来执行此操作,那将是理想的。

如果有任何澄清问题,请告诉我。这是我第一次就堆栈溢出提出问题,所以如果有任何不清楚或令人困惑的地方,我深表歉意!

0 投票
0 回答
121 浏览

python - Python-不在索引错误中(单热编码)

我正在研究泰坦尼克号数据集,并将 one-hot 应用于所有列。所以一切都是0和1。

但是,我在火车运行中收到以下错误。我尝试了很多东西,但我找不到解决方案。我试图尽可能多地解释这个错误,我希望你能轻松理解这个问题。感谢您的时间。

错误来自run_train.py的代码部分:

0 投票
1 回答
86 浏览

python - 创建一个 numpy 数组的置换浅表副本

我希望对同一数据有两个不同的视图,其中行的顺序不同,这样通过一个视图所做的更改将反映在另一个视图中。具体如下代码

具有以下输出:

但我希望最后一点是

这个问题的答案表明,不可能在特定索引处查看视图,尽管该问题的 OP 正在询问数组的一个子集,而我想要整个数组的视图。(似乎这里的关键区别是切片与智能索引)

一篇询问按行切片、然后按列切片、按列切片、然后按行切片的帖子有一个公认的答案,即“重要的是您是按行切片还是按列切片......”。所以我尝试处理阵列的扁平视图..

给出以下输出:

如您所见,第 4 个条目C没有改变。我提到的第一篇文章的建议解决方案是创建一个副本,进行更改,然后更新原始数组。我可以编写函数来包装它,但这并不能消除我复制的次数。它所做的只是对用户隐藏它。

我在这里想念什么?我应该使用data这些数组的属性吗?如果是这样,了解如何做到这一点的一个好的起点是什么?

0 投票
0 回答
27 浏览

numpy - 多维数组的 Numpy 索引

x我有一个形状为的数组(308, 308, 308)v我有一个shape的整数索引数组(10, 308, 308, 3)。我想索引x以创建一个y形状矩阵,(10, 308, 308)(i, j, k)-entry 是x[tuple(v[i, j, k])]. 有没有一种快速的方法来实现这一点?

0 投票
1 回答
128 浏览

python - 如何在不实际索引数组的情况下获得已知形状数组的索引元素数?

我有一个索引IDX(可能是索引列表、布尔掩码、切片元组等)索引一些已知形状的抽象 numpy 数组shape(可能很大)。

我知道我可以创建一个虚拟数组,对其进行索引并计算元素:

有没有什么明智的方法可以在不创建任何(可能很大)数组的情况下获得索引元素的数量?

我需要将 3D 空间中某些点的函数列表制成表格。这些点是给定为XYZ列表的矩形网格的子集,并且IDX正在索引它们的笛卡尔积:

这些函数接受X, Y,Z参数(并返回需要索引的笛卡尔积的值)或XX, YY, ZZ。在我创建XX,YYZZ数组的那一刻,无论它们是否被使用,然后我为函数值分配一个数组:

但我想创建XXYY并且ZZ仅在必要时创建。我还想将TAB分配与填充行分开,因此我需要提前知道列数。

0 投票
1 回答
46 浏览

numpy - NUMPY:是否有更易读的方式来索引 numpy 数组?

我有一个大约 7 列的 Numpy 数组,我需要对某些值进行很多索引,但目前我这样做的方式并不容易阅读。例如。我想说什么rates[-1][high]或类似的话。我想也许我可以为例如做变量。high = 2但是我在许多不同的函数中使用相同的费率数据,所以我必须在每个函数中设置这些变量或将它们作为参数传递,但这也不是很有用。有一个更好的方法吗?提前致谢!