问题标签 [numpy-slicing]
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.
python - 从 NumPy 数组中选择特定的行和列
我一直在疯狂地试图弄清楚我在这里做错了什么愚蠢的事情。
我正在使用 NumPy,并且我有要从中选择的特定行索引和特定列索引。这是我的问题的要点:
为什么会这样?当然,我应该能够选择第一、第二和第四行,以及第一和第三列?我期待的结果是:
numpy - 3D 数组中的 NumPy 索引歧义
我有以下形状的 3D 数组
我正在尝试进行高级索引以提取子数组,例如:
在以下情况下,我希望结果是 shape (4, 2)
。
由于我们确实__getitem__
沿第一个维度调用该维度将消失。沿着第二个轴,我们对所有内容进行切片,使其应该是4
,沿着最后一个轴,它应该是2
。所以,我们应该得到 shape 的结果子数组,(4, 2)
但我们得到的是 shape (2, 4)
。为什么会出现这种歧义?我应该如何解释结果?
python - 这种类型的索引是 Numpy 数组的转置吗?
我正在关注 Python 中科学提案的某些教程,并且我遇到了这种使用索引的方式:
此打印返回的是:
这段代码的作用很明显,我发现它对我的提议非常有用,但我永远不会想到使用它,因为我不明白这个切片语法在说什么。
谁能解释一下这种切片是如何工作的?
提前致谢。
python - 使用原始矩阵的每个单独的行和列从 np.zeros 数组创建单独的数组
我有一个由 6 行 x 6 列的字母数字字符组成的屏幕(例如 p300 拼写器)我想为每个可能的行和列在它们照亮时创建一个数组(总共 12 个)。当特定的列/行被照亮时,用 1 填充它,而矩阵的其余部分用 0 填充。最终,我想将特定矩阵与屏幕上发生的时间事件相关联。
单独切片行/列,为所需的 12 个输出中的每一个生成变量。
python 和编码的新手,循环应该有助于使这更容易。下面是我对行的尝试。为每一行生成一个,但是前一行仍然充满一个,并在每次迭代中继续构建,用一个填充 6x6 数组。创建一个“new_event”数组来传递当前迭代似乎也无济于事。如何在循环中生成单个数组而不构建前一个数组?想法/评论赞赏
python - Numpy同时切片多个维度
给定一个二维数组和两对索引,分别定义一个子矩阵的左上角和右下角:
我可以通过以下方式获取子矩阵:
但是我想使用像这样更优雅的东西:
同时切片所有维度。ij_ul中的第一个索引切片到ij_lr中的第一个索引,第二个到第二个。
我想将它用于应该适用于 2D 和 3D 的功能。这里这样的公式会更通用,因为不需要计算尺寸和调整切片:
如果数组和两个索引元组具有匹配的维度,则最后一行将始终有效。
是否有类似在 python/numpy 中同时切片多个维度的东西?
python - 在数组边界上对 ndarray 进行切片
问题:
给定一个ndarray:
我寻找一个例程给我:
例如:从索引 8 开始,跨越数组边界并在索引 2 处停止(包括)如果我使用切片,我(当然)得到:
一个可能的答案:
就是使用翻滚功能。
我要找的东西:
我不喜欢这个,它不像切片那么简单。所以我寻找类似的东西:
例如在pandas.DataFrame.iloc中存在与此类似的语法。非常感谢您!
注意:iloc,不做我想做的事。我只是提到了语法(我喜欢)。感谢您的评论,cᴏʟᴅsᴘᴇᴇᴅ
python - 批量大小的 Numpy 切片
我有一个A
形状的 numpy 数组(550,10)
。我有 100 的批量大小,即我想要多少数据行A
。在每次迭代中,我想从 A 中提取 100 行。但是当我到达最后 50 行时,我想从 A 中提取最后 50 行和前 50 行。
我有这样的功能:
如何执行最后一步?
python - Python中多维数组中的变量切片
我有一个尺寸为(Nt,Nx0,Ny0)的数组。对于轴 0 中的每个索引,我想在轴 1 和轴 2 中随机选择一个“矩形”。矩形具有固定大小 Nx1 x Nx2,Nx1 < Nx0 和 Ny1 < Ny0。
这段代码做了我想做的事:
我觉得应该可以使用 numpy 索引来做到这一点,例如:
但是,这不起作用。是否可以在没有 for 循环的情况下执行此操作?
python - 对角线 Numpy 切片
我想在 3 个坐标之间切片一个 2D numpy 数组,例如,给定这个 numpy,
和坐标(1,1)(3,1)(3,5),我想要这个:
非常感谢任何提示和指南。
python - 用维度为 N-1 的数组对维度为 N 的 numpy 数组进行切片
我正在寻找最惯用和最有效的方法来切片一个维度为 N 的数组,其中一个维度为 N-1 的数组表示要切片的最后一个维度的索引。输出的维度为 N-1。
举个例子:
结果将是:
例如,可以想象一个数组 (lat, lon, alt),我们希望为每个数组 (lat, lon) 提取一个特定的高度。此信息存储在二维数组中。
我正在寻找一个快速的解决方案,因为数组非常大。
谢谢!