2024-06-18 19:18:18 发布
网友
我有两个向量x和{},它们的长度都是用NumPy定义的。在
x
如何遍历x并修改y中的值?在
y
我是说
ingredients = empty(cakes.shape) for ingredient, cake in np.nditer([ingredients,cakes]): ingredient = cake * 2 + 2
你可能想处理向量而不是循环?在
In [144]: cakes = np.array([2, 3]) In [145]: cakes * 2 + 2 Out[145]: array([6, 8])
正如其他人所说,使用向量化通常更好/更快/更好。。。在
但是如果你有充分的理由使用迭代,你当然可以这么做。在
我刚从the official documentation复制了这个:
>>> a = np.arange(6).reshape(2,3) >>> a array([[0, 1, 2], [3, 4, 5]]) >>> for x in np.nditer(a, op_flags=['readwrite']): ... x[...] = 2 * x ... >>> a array([[ 0, 2, 4], [ 6, 8, 10]])
您的示例不起作用,因为component不是可变的数据类型,它是一个int或float以及更大结构中的一个元素——您必须修改更大的结构。在
尽管如此,numpyonic的方法看起来像:
ingredient = cakes * 2 + 2
numpy的最大优点是它的向量化语句,就像下面这样。在
你可能想处理向量而不是循环?在
正如其他人所说,使用向量化通常更好/更快/更好。。。在
但是如果你有充分的理由使用迭代,你当然可以这么做。在
我刚从the official documentation复制了这个:
您的示例不起作用,因为component不是可变的数据类型,它是一个int或float以及更大结构中的一个元素——您必须修改更大的结构。在
尽管如此,numpyonic的方法看起来像:
numpy的最大优点是它的向量化语句,就像下面这样。在
相关问题 更多 >
编程相关推荐