问题标签 [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 - python:使用 np.vectorize 和 np.meshgrid 得到一个数组列表 - 误解
np.vectorize
使用and后我遇到了数组问题np.meshgrid
以下是我的终端的结果
我是怎么得到的
会发生什么
用 (x, y) 调用函数后得到一个 (2, 2)-array
在用一系列 (x, y) 调用函数后得到一个多维-array
切片结果,结合 Array
3d-plot 中的第一个元素(x, y, 结果)
切片后得到
res =
[[1 11 11 1111],
[1 11 11 1111],
[1 11 11 1111]]
然后plot_3d(X,Y,res)
问题
为什么类型res
是数组?它看起来像一个数组列表。
我试过用
np.array(res)
->什么都不改变,和图一样,shape(3, 4)
np.array(res.tolst())
-> 形状为 (3, 4, 2, 2) 的 np.ndarray
python - 了解对 NumPy 数组执行条件索引时出现的 DeprecationWarning 错误(版本 1.11.13,Python 2.7)
在对 Numpy 数组执行条件索引时,我不理解弃用警告错误,希望能得到一些澄清,希望它也能造福于社区。让我们考虑一个名为“block”的 NumPy 数组,其中包含从 1 到 12 的整数:
我可以通过执行以下操作来选择不同于 4 的值:
现在我想选择不同于 1、4 和 7 的值。如果我这样做:
我收到以下错误:
谁能解释这个警告的原因,并指定执行此切片的正确方法(理想情况下,建议的解决方案也应该适用于尝试从大型 numpy 数组中提取与另一个大型 numpy 数组中的值不同的值时)?请注意,警告后 select = 2 ,我也不明白。
numpy - numpy 从 ndarray 的最后一个维度获取前 k 个元素
我有一个多维数组,我需要从最后一维的每一行中获取前 k 个元素。
我试图得到:
我可以使用以下方法获取索引,但我不确定如何分割这些值。
numpy - 带有滑动窗口的 Numpy 求和真的很慢
代码:
它可以工作,但最后两行需要很长时间,因为它们将处于循环状态。问题是“网格”变量包含一个窗口数组。我现在不知道如何加快这个过程。
python - 使用索引数组对 Numpy 4D 数组中的索引选择进行矢量化
如果没有 for 循环,我在执行以下操作时遇到了麻烦:
我有一个数组 A 这样:
和一个数组 B 使得:
对于 k,B[k] 是我想要保留的沿轴 = 1 的索引(0<= B[k,i] < 79)
我想以 C 结尾:
我可以这样做:
但我没有找到一种矢量化的方式来表达这一点。由于这运行了很多次:有没有更好(更快)的方法来获得 C ?
python - 依次将点积应用于 3D numpy 数组的切片
嗨 Stack Overflow 社区,
我有一个Rp
形状为 4x4x701 的 3D numpy 数组,其中 701 个 4x4 切片中的每一个都代表不同时间点的某个数量。我正在尝试有效地将 Givens 旋转矩阵Q
及其 Hermitian 转置QH
应用于 701 个切片中的每一个,并且目前正在迭代地执行此操作,如下所示:
但必须有一种方法可以不迭代地执行此操作(对于 numpy 加速)。我意识到我可以只np.dot
用于第一种情况,但是如果没有一些换位,这将不适用于第二种情况,这似乎会减慢速度。
任何想法将不胜感激!
python - 使用二维数组广播一维数组
我有一个array_data
包含 ~10**8 个元素的一维数组。
我有第二个数组array_index
,它指定用于切片的边界array_data
索引。
以下是 and 的最小、完整和可验证的array_data
示例array_index
:
问题:最好的切片方式是什么array_data
,以便我可以在切片数组array_index
上axis=1
执行另一项任务(例如min
, max
, mean
)?
我目前的解决方案使用列表理解和转换回 numpy 数组。这种方法看起来笨重且缓慢:
编辑:添加了最小、完整和可验证的示例(适用于 python 2.7)。
python - What is an elegant way to slice a pandas dataframe by a condition AND a date range at the same time?
So I am searching for a simple solution for changing the content of a dataframe based on both a condition and a time range. See code below:
Also I do know that I can make two conditions out of it like this, but I do not consider this as an "elegant" solution cause I do not make use of the nice time span functionality of pandas anymore:
python - 替换numpy数组中的元素避免循环
我有一个相当大的 1d numpy 数组 Xold 具有给定的值。这些值应根据 2d numpy 数组 Y 指定的规则替换:一个例子是
每当 Xold 中的值与 Y[:,0] 中的值相同时,Xnew 中的新值应该是 Y[:,1] 中的对应值。这是通过两个嵌套的 for 循环完成的:
对于给定的示例,这会产生Xnew=[0,100,200,300,400]
. 但是,对于大型数据集,此过程非常缓慢。完成这项任务的更快、更优雅的方法是什么?
python - 概括 Numpy 切片 Python
我不知道如何概括 numpy 数组的切片。请参阅以下切片:
如您所见, x
set 被切片:-1,4:-1
并y
设置为 -1,-2:
。如果我必须进行更改,那么我需要更改 3 次,而如果有办法将切片存储在变量中并且只需更改变量并反映更改。
例如:xset_slice = ":-1,4:-1"
和yset_slice = "-1,-2:"
。然后只需将其替换为:
但是这种说法会出错。因此,请让我知道是否有任何类似的方法可以帮助我。