将另一个列表中的每个数组与另一个数组

时间:2018-03-15 16:22:48

标签: python arrays python-3.x list

我创建了一个包含10个数组的列表,这些数组由20个随机数组成,每个数字介于0和1之间。

现在,我希望将列表中的每个数组与数字0.050.1,...添加到1.0,以便每个数组中的所有元素都不会更大比它乘以的数字。

例如,第一个数组中的所有20元素都应位于00.05之间,第二个数组中的所有元素都位于0和{{1}之间}} 等等。

我创建了0.10个随机数组列表以及100之间的一系列数字:

1

然后我尝试将元素乘以:

range1 = np.arange(0.005, 0.105, 0.005)
noise1 = [abs(np.random.uniform(0,1,20)) for i in range(10)]

但这并不起作用,只会导致列表中的所有数组具有相同的值。

我真的很感激有关如何做到这一点的帮助。

2 个答案:

答案 0 :(得分:1)

希望我已经清楚地理解了这个问题,从而提供了这个解决方案。

noise2 = [noise1[i] * range1[i] for i in range(len(noise1))]

答案 1 :(得分:0)

更多 pythonic 方式将使用zip

range1 = [1, 2, 3]
noise1 = [3, 4, 5]
noise2 = [i * j for i, j in zip(range1, noise1)]
# [3, 8, 15]