2016-10-27 13 views
0

私はnumpy配列[1 2 3 4 5 6 7 8 9 10 11 12]を持っています。上記の場合、サイズ6のサブアレイで3つのオーバーラップ [1 2 3 4 5 6] [4 5 6 7 8 9] [7 8 9 10 11 12]で除算したいオーバーラップを伴うサブアレイ分割

私はそれを一般化したいと思います。 私は千のサイズの配列を持っていると言います。私は50の重なりを持つ100サイズのサブ配列を取得したい。

また、オーバーラップサイズは常にサブアレイサイズの半分です。

答えて

2

これを試してみてください:

>>> size = 6 
>>> overlap = 3 
>>> z = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12] 
>>> zip(*[z[i:] for i in range(size)])[::overlap] 
[(1, 2, 3, 4, 5, 6), (4, 5, 6, 7, 8, 9), (7, 8, 9, 10, 11, 12)] 
関連する問題