Python のスライディング ウィンドウ イテレータ
ストリーミング データや逐次処理を扱う場合、ローリング ウィンドウ イテレータまたはスライディング ウィンドウ イテレータは、定義されたウィンドウ内の要素のストリーム。
Python では、スライディング ウィンドウ イテレータを作成できます。組み込みの itertools モジュールを使用します。古いバージョンの Python ドキュメントの window() 関数は、簡潔で効率的な実装を提供します。
from itertools import islice def window(seq, n=2): "Returns a sliding window (of width n) over data from the iterable" " s -> (s0,s1,...s[n-1]), (s1,s2,...,sn), ... " it = iter(seq) result = tuple(islice(it, n)) if len(result) == n: yield result for elem in it: result = result[1:] + (elem,) yield result
また、単純なリストまたはタプルの場合は、単純なアプローチを使用できます。
seq = [0, 1, 2, 3, 4, 5] window_size = 3 for i in range(len(seq) - window_size + 1): print(seq[i: i + window_size])
どちらの場合も、ウィンドウはシーケンス内をスライドして、指定されたサイズの重複ウィンドウを生成し、管理しやすい形式でデータの分析と処理を容易にします。マナー。
以上がPython でスライディング ウィンドウ イテレータを作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。