Numpy,如何根据另一个数组中的相应数字重复数组的元素

时间:2017-10-08 20:33:01

标签: python arrays numpy

根据另一个数组中相应的数字重复数组元素的最佳方法是什么?例如,给定:

import numpy as np
a = np.array([100,50,200,10])
b = np.array([0.5,0.1,0.15,0.25])

如何根据c中的数字包含b重复数字的数组a

c = [0.5, 0.5, ..., 0.5, 0.1, 0.1, ... 0.1, 0.15, ..., 0.15, 0.25, ..., 0.25]

其中0.5,0.1,0.15和0.25的计数分别为100,50,200和10.

我知道我可以通过使用for循环和np.repeat并将结果打包到数组中来实现。但有没有更好的方法在numpy这样做?

1 个答案:

答案 0 :(得分:1)

import numpy as np

a = np.array([100,50,200,10])

b = np.array([0.5,0.1,0.15,0.25])

c = np.repeat(b,a)