问题标签 [numpy-ufunc]
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 - Sympy - ufuncify 向量函数
我对修改后的FitzHugh-Nagumo 模型的向量函数进行了lambdify-ied (没有扩散项):
但是尝试以ufunc
相同的方式生成 a 会导致错误:
我收到的错误消息以:
有人知道ufuncify向量函数的正确方法是什么?
numpy - 为什么 one_like 被列为 ufunc?
我很惊讶地看到这里numpy.ones_like
的 ufunc 列表中列出了。这只是一个疏忽,还是有特定的用例?
python - 为什么累积对 numpy.maximum 而不是 numpy.argmax
这两个看起来应该非常等价,因此对一个有效的应该对另一个有效?那么为什么累积只适用于最大值而不适用于argmax?
编辑:一个自然的后续问题是如何以最pythonic / numpy-esque的方式创建有效的argmax累积?
python - 使 np.vectorize 在标量输入上返回标量值
以下代码返回一个数组而不是预期的浮点值。
如果输入是标量而不是奇怪的数组类型,有没有办法强制它返回简单的标量值?
我觉得很奇怪它默认不这样做,因为所有其他 ufunc (如 np.cos、np.sin 等)确实返回常规标量
编辑:这是有效的代码:
print(f(11.5)) # 打印 12.5
numpy - 带有任意运算符的 numpy dot 或 einsum
我想使用类似np.dot
or 的东西(最好)np.einsum
来有效地执行它们的相同功能,但使用替代ufunc
而不是np.multiply
. 例如,考虑这两个数组:
现在假设我想计算每行中的元素数a
等于b
. 我希望能够执行以下等效操作(注意:下面的输出是捏造的,但值是我希望看到的):
有没有办法做到这一点?
numpy - 使用针对 CUDA 的 Numba 的“guvectorize”,如何将变量指定为输入和输出?
我想使用Numba 的guvectorize
方法在我的 CUDA 卡上运行代码。我首先定义了一个CPU方法
它给出了测试矩阵的预期输出
实际上,当以 CPU 为目标时,Anew
它已就地突变,因此无需将输出分配给res_cpu
将目标更改为以未针对 Generalized CUDA ufuncs'cuda'
记录的方式彻底改变guvectorize
行为。这是修改后的 ufunc 定义
现在该函数不接受第二个输入矩阵
而是创建一个空矩阵将值放入
我希望通用 ufunc 更新输入矩阵的适当值,而不是填充空矩阵。以 CUDA 设备为目标时,有没有办法将变量指定为输入和输出?
python - 等效于张量流中的 np.add.at
如何将 np.add.at 语句转换为 tensorflow?
编辑
self.dW.shape 是 (V, D),self.D.shape 是 (N, D),self.x.size 是 N
python - ndarrays 上的 np.ndarray bitwise_or 运算符失败
我想初始化一个只能包含零或一的大小为 (n,m) 的 numpy 数组。此外,我想稍后将 np.bitwise_or 与数组一起使用。
例如,如果我尝试:
它失败:
我怎样才能以类似的方式做到这一点但没有错误?
如果我尝试,
它确实有效。
python - 如何对包含 LaTeX 符号的函数进行 ufuncify?
这段代码
抛出以下错误,这些错误显然来自\alpha
Python/C 代码中的。不幸的是,仅将其替换\alpha
为a
Sympy 符号并非易事,因为在我的实际代码库中,此代码是更大程序的一部分,该程序还显示/写出大量 LaTeX 输出。
python-3.x - 具有多维 x 坐标的 polyfit
假设我有一个 (400,10) 数组x
和一个 (400,10) 数组y
。是否可以在没有迭代的情况下将每一行的 polyfity
插入到相应的行中?如果使用循环,它将类似于x
for
因为 400 行x
完全不同,所以我不能只将具有相同x
坐标的 np.polyfit 应用于多维数组y
。