3

私はnumpyの初心者ですが、これはnumpyの目的に反するため、numpy配列を反復処理するべきではないという考えでした。

numpy 配列に対して要素ごとの操作を実行しようとしていますが、構文が明らかにわかりません。

コード:

for line in fidNNC:
    temp = line.strip().split()
    temp.insert(0,0)
    CC.append(temp[0:7])

fidNNC.close()
NNC = np.array(CC)
del(CC)

inds = np.arange(len(NNC))[ NNC[:,4]-1 == NNC[:,1] ]
NNCX = NNC[inds,:]
inds = np.arange(len(NNC))[ NNC[:,5]-1 == NNC[:,2] ]
NNCY = NNC[inds,:]

このファイルfidNNCには、約 100 万行と 10 列の int が含まれています。

エラーメッセージ:

    inds = np.arange(len(NNC))[ NNC[:,4]-1 == NNC[:,1] ]
TypeError: unsupported operand type(s) for -: 'numpy.ndarray' and 'int'

反復せずにNNC[:,4]andのすべての要素から 1 を減算するにはどうすればよいですか?NNC[:,5]

前もって感謝します、

ダニエル

4

2 に答える 2