は、私は、そのインデックス次のように整列された2つの時間配列を有する言う:インデックス
import numpy as np
t1_ind = np.array([ 1, 1, 1, 2, 3, 4, 5, 5, 6])
t2_ind = np.array([20, 21, 22, 23, 23, 24, 25, 26, 27])
t1
のインデックス1、インデックス20、21及びt2
22と整列されることを意味します(t1
が最初の3つの増分でt2
より高速であることを意味する)。
予想される出力は次のようになります。
y = np.array(([ 1, 2, 4, 5, 6],
[20, 23, 24, 25, 27]))
ロジックは、「スキャン」t1_ind
とt2_ind
ととは、すべての重複セグメントのオフセット発症の両方をマークすることです。この例では、エントリ1
にt1_ind
が続き、複製ペアが続き、開始ペアはy[:,0]
に記録され、それぞれのオフセットペアはy[:,1]
です。 t1_ind
の次の重複セグメントは、それぞれy[:,3]
とy[:,4]
と開始し、終了します。 t2_ind
は同じ方法で行われ、結果のペアはy[:,1]
(2回記録されません)とy[:,2]
です。それは私には重複削除の問題と同様のようですが、私はどのように知りません。
申し訳ありませんが、私は適切なタイトルを考えて論理を正確に説明するのはちょっと難しいです。助けてくれてありがとう。
「t1_ind」の滞在で* 3 *しないでください。 – Psidom
@Psidom 3は複製されておらず、オフセットをマークしません( 't2_ind'では23、[4、24]は) – Francis