numpy.insert()的具體使用方法

numpy.insert()主要用於向矩陣中插入行或列。對於多維矩陣,可以沿任意一個軸插入元素。

1. 參數說明

numpy.insert(arr, obj, values, axis=None)

arr:輸入矩陣,numpy.array類型。註意:該方法並不改變直接arr的值,而是返回一個

obj:索引,整數或整數串。例如可以隻插入一行元素,也可以插入多行元素,多行可以是連續的(如第0行和第1行),也可以是分立的(如第2行和第4行)。

values:插入的值,numpy.array類型

axis:插入的軸,整型

返回值:得到的矩陣,numpy.array類型

2. 示例

2.1. 插入一列,值為標量

a = np.array([[1, 1], [2, 2], [3, 3]])
np.insert(a, 1, 5, axis=1)

結果

array([[1, 5, 1],
       [2, 5, 2],
       [3, 5, 3]])

2.2. 插入一列,值為一維矩陣

np.insert(a, [1], [[1],[2],[3]], axis=1)

2.3. 插入多列,值為標量

註意:索引值不能超過維度的最大索引,也就是說隻能在某一維的中間插值,不能在末尾插入。

x = np.arange(8).reshape(2, 4)
idx = (1, 3)
np.insert(x, idx, 999, axis=1)

結果

array([[  0, 999,   1,   2, 999,   3],
       [  4, 999,   5,   6, 999,   7]])

2.4. 輸入為一維向量

在向量 [1,2,3,4] 的第1個元素前面的位置插入5

print(np.insert([1,2,3,4],1,5))
[1 5 2 3 4]

在向量 [1,2,3,4] 的第1個元素前面的位置插入5,第2個元素前面的位置插入7

print(np.insert([1,2,3,4],[1,2],[5,7]))
[1 5 2 7 3 4]

2.5. 輸入為矩陣

插入一整行

import numpy as np
a = a = np.array([[1, 1], [2, 2], [3, 3]])
print('a=',a)
print('after insertion:\n',np.insert(a,[1],[6,6],axis=0))

結果

a= [[1 1]
 [2 2]
 [3 3]]
after insertion:
 [[1 1]
 [6 6]
 [2 2]
 [3 3]]

參考文獻

numpy.insert — NumPy v1.24 Manual

到此這篇關於numpy.insert()的具體使用方法的文章就介紹到這瞭,更多相關numpy.insert()使用內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: