我想执行一个元素乘法,在Python中用值将两个列表相乘,就像我们在Matlab中做的那样。
这就是我在Matlab中的方法。
a = [1,2,3,4]
b = [2,3,4,5]
a .* b = [2, 6, 12, 20]
对于来自a
的x
和来自b
的y
的每个组合,列表理解将给出16个列表条目。不确定如何映射它。
如果任何人对原因感兴趣,我有一个数据集,并希望将其乘以Numpy.linspace(1.0, 0.5, num=len(dataset)) =)
。
发布于 2012-04-23 03:48:35
使用与zip()
:混合的列表理解。
[a*b for a,b in zip(lista,listb)]
发布于 2012-04-23 03:47:44
由于您已经在使用numpy
,因此将数据存储在numpy
数组中而不是列表中是有意义的。一旦你这样做了,你就可以免费获得像element-wise产品这样的东西:
In [1]: import numpy as np
In [2]: a = np.array([1,2,3,4])
In [3]: b = np.array([2,3,4,5])
In [4]: a * b
Out[4]: array([ 2, 6, 12, 20])
发布于 2016-11-15 00:55:16
使用np.multiply(a,b):
import numpy as np
a = [1,2,3,4]
b = [2,3,4,5]
np.multiply(a,b)
https://stackoverflow.com/questions/10271484
复制相似问题