idtopick
IDの配列です
idtopick=array([50,48,12,125,3458,155,299,6,7,84,58,63,0,8,-1])
idtolook
興味のあるIDを含む別の配列です
idtolook=array([0,8,12,50])
idtopick
に対応するの位置を別の配列に格納したいと思いidtolook
ます。
これが私の解決策です
positions=array([where(idtopick==dummy)[0][0] for dummy in idtolook])
その結果
array([12, 13, 2, 0])
それは機能しますが、実際には、私が扱っている配列は何百万ものポイントを格納しているため、上記のスクリプトはかなり遅くなります。速くする方法があれば教えていただきたいです。また、idtolook
並べ替えるアルゴリズムが私の場合には機能しないように、順序を維持したいと考えています。