當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python dask.array.insert用法及代碼示例


用法:

dask.array.insert(arr, obj, values, axis)

在給定索引之前沿給定軸插入值。

此文檔字符串是從 numpy.insert 複製的。

可能存在與 Dask 版本的一些不一致之處。

參數

arrarray_like

輸入數組。

obj整數、切片或整數序列

定義在其之前插入values 的一個或多個索引的對象。

obj 是單個標量或具有一個元素的序列時支持多次插入(類似於多次調用插入)。

valuesarray_like

要插入 arr 的值。如果 values 的類型與 arr , values 的類型不同,則轉換為 arr 的類型。 values 的形狀應使 arr[...,obj,...] = values 合法。

axis整數,可選

沿其插入 values 的軸。如果 axis 為 None 則首先將 arr 展平。

返回

outndarray

插入了valuesarr 的副本。請注意,insert 不會就地發生:返回一個新數組。如果 axis 為 None,則 out 是扁平數組。

注意

請注意,對於更高維度的插入,obj=0 的行為與 obj=[0] 非常不同,就像 arr[:,0,:] = valuesarr[:,[0],:] = values 不同一樣。

例子

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

序列和標量之間的區別:

>>> np.insert(a, [1], [[1],[2],[3]], axis=1)  
array([[1, 1, 1],
       [2, 2, 2],
       [3, 3, 3]])
>>> np.array_equal(np.insert(a, 1, [1, 2, 3], axis=1),  
...                np.insert(a, [1], [[1],[2],[3]], axis=1))
True
>>> b = a.flatten()  
>>> b  
array([1, 1, 2, 2, 3, 3])
>>> np.insert(b, [2, 2], [5, 6])  
array([1, 1, 5, ..., 2, 3, 3])
>>> np.insert(b, slice(2, 4), [5, 6])  
array([1, 1, 5, ..., 2, 3, 3])
>>> np.insert(b, [2, 2], [7.13, False]) # type casting  
array([1, 1, 7, ..., 2, 3, 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]])

相關用法


注:本文由純淨天空篩選整理自dask.org大神的英文原創作品 dask.array.insert。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。