扩展numpy数组的维护位置

时间:2019-11-17 16:58:46

标签: python numpy

我需要一种简单的方法来扩展一个在值之间添加新值的数组。

如果我有一个数组:

a = np.array([[1, 4, 10], [2, 5, 11]])

我应该怎么做才能通过插值在值之间添加2个新值以获得一个数组: b = [[1, 2, 3, 4, 6, 8, 10], [2, 3, 4, 5, 7, 9, 11]]

谢谢。

1 个答案:

答案 0 :(得分:-1)

使用linspace创建新的序列,然后使用concatenate创建新的数组:

>>> a
array([[ 1,  4, 10],
       [ 2,  5, 11]])
>>> b = np.linspace(a[:,0],a[:,1],4,1).T
>>> c = np.linspace(a[:,1],a[:,2],4,1).T
>>> b
array([[1., 2., 3., 4.],
       [2., 3., 4., 5.]])
>>> c
array([[ 4.,  6.,  8., 10.],
       [ 5.,  7.,  9., 11.]])
>>> d = np.concatenate((b,c[:,1:]),axis=1)
>>> d
array([[ 1.,  2.,  3.,  4.,  6.,  8., 10.],
       [ 2.,  3.,  4.,  5.,  7.,  9., 11.]])
>>>