添加 n 个元素 numpy 数组

Ale*_*lex 2 python arrays numpy

我有一个 numpy 数组,我想添加n 个具有相同值的元素,直到数组的长度达到 100。

例如

my_array = numpy.array([3, 4, 5])
Run Code Online (Sandbox Code Playgroud)

请注意,我事先不知道数组的长度。它可以是任何 3 <= x <= 100

我想添加 (100 - x) 个元素,所有元素的值为 9。我该怎么做?

agh*_*ast 5

有两种方法可以解决此问题:连接数组或分配数组。

您可以使用np.concatenate并生成适当大小的数组:

my_array = # as you defined it
remainder = [9] * (100 - len(my_array))
remainder = np.array(remainder)
a100 = np.concatenate((my_array, remainder))
Run Code Online (Sandbox Code Playgroud)

或者,您可以构造一个np.full数组,然后使用切片表示法覆盖一些值:

a100 = numpy.full(100, 9)
my_array = # as you defined it
a100[0:len(my_array)] = my_array
Run Code Online (Sandbox Code Playgroud)