迭代通过2d数组查看邻居,除了边界

问题描述 投票:0回答:1

我有这个代码,我试图迭代一个2d(numpy)dims 300,350数组。我正在查看数组中的每个点[i,j],然后查看它的两个邻居[i + 1,j + 1]等(取决于角度)。我正在观察0度,45度,90度和135度的角度。我的问题是索引第一个i,j(角度= 0度)我将看i,j + 1和i,j-1。由于第一次迭代是在j = 0,因此我得到一个索引错误,因为j-1 = -1。我一直在努力寻找如何规避这个问题的时间。我的代码看起来像这样:

for i in range(trex.shape[0]): # ALL ROWS
    for j in range(trex.shape[1]): # ALL COLUMNS
        if shape[i,j] == 0:    # for 0 degree angles (shape is angles)
            if trex[i,j] > trex[i, j+1] and trex[i,j] > trex[i,j-1]: # conditions
                np.append(trex_other, trex[i,j])
            else:
                np.append(trex_other, 0)

我看所有的角度,但这只是我想要它做的一个例子。总结一下,我想在除2d数组周围边界之外的所有点迭代这个2d数组。任何帮助是极大的赞赏!

python arrays python-3.x loops iteration
1个回答
0
投票

从1到1的长度迭代

for i in range(1, trex.shape[0]-1): # MOST ROWS
    for j in range(1, trex.shape[1]-1): # MOST COLUMNS
           ...
© www.soinside.com 2019 - 2024. All rights reserved.