根据另一个数组中相应的数字重复数组元素的最佳方法是什么?例如,给定:
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这样做?
答案 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)