如何在现有向量中的多个点处插入向量?

时间:2014-09-29 17:32:21

标签: python numpy

给定向量a = np.array([1, 2, 3, 4, -1, 5, 6, -1, 7, 8, -1, 9])b = np.array([999, 999, 999]),如何在保存值{{b的每个索引之前将向量a插入向量a中1}}?

为了说明,我想获得以下输出:

-1

我尝试过使用array([1, 2, 3, 4, 999, 999, 999, -1, 5, 6, 999, 999, 999, -1, 7, 8, 999, 999, 999, -1, 9]) ,但我明显遗漏了一些东西:

np.insert

是什么给出的?我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您需要重复提供给np.insert()的索引:

In [48]: np.insert(a, np.repeat(np.where(a == -1)[0], b.size), b)
Out[48]: 
array([  1,   2,   3,   4, 999, 999, 999,  -1,   5,   6, 999, 999, 999,
        -1,   7,   8, 999, 999, 999,  -1,   9])