2

で Python を使用しnumpyます。

私はnumpy配列を持っていますb:

b = np.array([True,True,True,False,False,True,True,False,True,True,True,True,False])

bが等しい最初と最後のインデックスを見つける必要がありますTrue

この例では:

out_index: [0,2]
           [5,6]
           [8,11]

誰かが提案してもらえますか、どうすれば入手できout_indexますか?

4

1 に答える 1

6
b = np.array([True,True,True,False,False,True,True,False,True,True,True,True,False])
idx = np.argwhere(np.diff(np.r_[False, b, False])).reshape(-1, 2)
idx[:, 1] -= 1
print idx

出力:

[[ 0  2]
 [ 5  6]
 [ 8 11]]
于 2013-02-28T12:10:12.443 に答える