首页 > 解决方案 > 如何将浮点数组插入到Python中特定索引处的另一个数组中

问题描述

我有一个 numpy 数组,如下所示:

matrix = array([[0.],
       [1.],
       [2.],
       [3.],
       [4.]])

我有另一个数组:

x = [0.05385944 0.05419472 0.05453447 0.05487901]

我想将第二个数组插入到第一个数组的第一个索引中,例如:

matrix = array([[0. 0.05385944 0.05419472 0.05453447 0.05487901],
       [1.],
       [2.],
       [3.],
       [4.]])

我努力了

matrix = np.insert(matrix, 1, x), 

但这正在创建一个数组:

array([ 0. 0.05385944, 0.05419472,  0.05453447,  0.05487901, 1., 2., 3., 4.])

标签: pythonarraysnumpy

解决方案


Numpy 不支持可变维度。所以它不能有比其他元素更多的行。

常规的 Python 列表可以做到这一点:

matrix = [[0.],
       [1.],
       [2.],
       [3.],
       [4.]]

x = [0.05385944, 0.05419472, 0.05453447, 0.05487901]

matrix[0].extend(x)

for row in matrix:print(row)

[0.0, 0.05385944, 0.05419472, 0.05453447, 0.05487901]
[1.0]
[2.0]
[3.0]
[4.0]

推荐阅读