for i,(x,y,z) in enumerate( zip(analysisValues, analysisValues[1:], analysisValues[2:]) ):
if all(k<0.5 for k in (x,y,z)):
instance = i
break
このコードは配列を反復処理し、条件「<0.5」を満たす最初の 3 つの連続した値を探します。
==============================
「時系列」データを使用して、t、t+1s、t+2s の値を比較しています
データが 1Hz でサンプリングされた場合、3 つの連続する値が比較され、上記のコードは正しい (ポイント 0、1、2)
データが 2Hz でサンプリングされている場合は、1 つおきのポイントを比較する必要があります (ポイント 0、2、4)。データが 3Hz でサンプリングされている場合は、3 つおきのポイントを比較する必要があります (ポイント 0、3、6)。
入力データのサンプル レートは変動する可能性がありますが、変数 'SRate' として認識され、記録されます。
==============================
このポイントごとの分析に「時間」を組み込むのを手伝ってくれませんか