我想從事件的二維數組(x,y,t)中增加計數器的3D矩陣(nparray)下面 代碼工作:使用以下命令從2D索引列表(x,y,z)增加3D數組的計數器:Python Numpy Slice
TOF_cube=np.zeros((324,324,4095),np.int32) #initialise a 3d array for whole data set
data = np.fromfile(f, dtype='<i2', count=no_I16) #read all events, x,y,t as 1D array
data=data.reshape(events,cols)
xpos=data[:,0]
ypos=data[:,1]
tpos=data[:,2]
i=0
while i < events:
TOF_cube[xpos[i],ypos[i],tpos[i]] += 1
i+=1
要使用切片和索引我代替我while循環與
TOF_cube[xpos,ypos,tpos] += 1
但是,而不是(通過while循環和獨立檢查)複製正確的4365520號事件我只記錄了4365197.
爲什麼切片方法會丟失事件?
我在while循環中使用完全相同的切片,並作爲索引的'參數'。
什麼'TOF_cube.max()'爲每個方法是什麼? –