移動平均を効率よく計算する方法を調べていてNumpyのas_stridedというのが出てきたのだが、ぱっと見てよくわからなかったので調べてみた。
とりあえずアレイを作る
import numpy as np from numpy.lib.stride_tricks import as_strided x = np.arange(10)
Int型なので8byte
print x.strides # (8,)
最初のタプルは作成する配列の次元。 次のタプルがよくわからなかったので調べたら、最初がrowのstrideで次がcolumnのstrideだった。
as_strided(x, (5, 6), (8, 8)) # array([[0, 1, 2, 3, 4, 5], # [1, 2, 3, 4, 5, 6], # [2, 3, 4, 5, 6, 7], # [3, 4, 5, 6, 7, 8], # [4, 5, 6, 7, 8, 9]])
100 numpy exercisesでもやっておいたほうがいいような気がしてきた。
それから、12/6にShizuoka.pyをやります。12/20にはShizuoka.goがあります。
Shizuoka.pyでは発表者絶賛募集中です☆