Python:如何使用一系列数字填充数组?

时间:2016-05-27 02:08:00

标签: python arrays numpy fill

所以我有一个包含100个元素的数组:

a = np.empty(100)

如何填写一系列数字?我想要这样的东西:

b = a.fill(np.arange(1, 4, 0.25))

所以我希望它继续用a填充该范围的值,直到达到它的大小

由于

2 个答案:

答案 0 :(得分:5)

np.putb的值放入a目标索引ind。如果v小于ind,则会根据需要重复其值:

import numpy as np

a = np.empty(100)
b = np.arange(1, 4, 0.25)
ind = np.arange(len(a))
np.put(a, ind, b)
print(a)

产量

[ 1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75  2.    2.25  2.5   2.75  3.    3.25  3.5   3.75
  1.    1.25  1.5   1.75]

答案 1 :(得分:1)

更新解决方案以适应描述

a = np.empty(100)
filler = np.arange(1,4,0.25)
index = np.arange(a.size)
np.put(a,index,filler)