numpy中三維數(shù)組中加入元素后的位置詳解
今天做數(shù)據(jù)處理時,遇到了從三維數(shù)組中批量加入二維數(shù)組的需求。其中三維數(shù)組在深度學習的特征數(shù)據(jù)處理時經(jīng)常會使用到,所以讀者有必要對該小知識點做到清楚了解并掌握?,F(xiàn)對三維數(shù)組中的元素位置結合代碼做詳細歸納總結,方便日后查閱和為網(wǎng)友答疑!
圖示效果圖:
直接貼代碼:
def test3D(): import numpy as np data_array = np.zeros((3, 5, 6), dtype=np.int) data_array[1, 2, 2] = 1 print(data_array)
介紹:通過np.zeros創(chuàng)建一個3行5列6個通道的三維數(shù)組,并給第二個通道的第一行第二列賦值1.
運行結果圖:
分析: 有運行結果可知,創(chuàng)建了六個通道,在深度學習中這六個通道相當于六個Feature Map,對應結果圖中的六列。
再向外看一層,共有三個塊,每個塊代表這個通道的第幾行數(shù)據(jù)。
每個塊里有五行數(shù)據(jù),每一行代表每個通道的第幾列數(shù)據(jù)
所以,代碼中的賦值語句: data_array[1, 2, 2] = 1
表示為第2個通道,下標從0開始,所以在圖中位置為第三列;第1行第2列,下標從0開始,所以圖中表示第二個塊的第三行;即為圖中所示位置。
補充:三維數(shù)組的求和
多維數(shù)組的軸(axis=)是和該數(shù)組的size(或者shape)的元素是相對應的;
>>> np.random.seed(123) >>> X = np.random.randint(0, 5, [3, 2, 2]) >>> print(X) [[[5 2] [4 2]] [[1 3] [2 3]] [[1 1] [0 1]]] >>> X.sum(axis=0) array([[7, 6], [6, 6]]) >>> X.sum(axis=1) array([[9, 4], [3, 6], [1, 2]]) >>> X.sum(axis=2) array([[7, 6], [4, 5], [2, 1]])
如果將三維數(shù)組的每一個二維看做一個平面(plane,X[0, :, :], X[1, :, :], X[2, :, :]),三維數(shù)組即是這些二維平面層疊(stacked)出來的結果。則(axis=0)表示全部平面上的對應位置,(axis=1),每一個平面的每一列,(axis=2),每一個平面的每一行。
以上這篇numpy中三維數(shù)組中加入元素后的位置詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
Python實現(xiàn)的擬合二元一次函數(shù)功能示例【基于scipy模塊】
這篇文章主要介紹了Python實現(xiàn)的擬合二元一次函數(shù)功能,結合實例形式分析了Python基于scipy模塊進行二元一次函數(shù)擬合相關科學運算操作實現(xiàn)技巧,需要的朋友可以參考下2018-05-05Python列表(list)、字典(dict)、字符串(string)基本操作小結
這篇文章主要介紹了Python列表(list)、字典(dict)、字符串(string)基本操作小結,本文總結了最基本最常用的一些操作,需要的朋友可以參考下2014-11-11Python?數(shù)據(jù)清洗刪除缺失值替換缺失值詳情
這篇文章主要介紹了Python?數(shù)據(jù)清洗刪除缺失值替換缺失值詳情,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09arcgis使用Python腳本進行批量截圖功能實現(xiàn)
最近公司數(shù)據(jù)部那邊有個需求,需要結合矢量數(shù)據(jù)和影像數(shù)據(jù),進行批量截圖,并且截圖中只能有一個圖斑,還要添加上相應的水印,這篇文章主要介紹了arcgis使用Python腳本進行批量截圖,需要的朋友可以參考下2023-01-01