加速度のようなデータを連続して取得した場合に一番振幅が激しい場所を特定のarray数で抽出したいと考えた時、どのようなプログラムが一番望ましいでしょうか。
例えば
python
1a=np.random.uniform(-0.5,0.5,100) 2b=np.random.uniform(-2,2,100) 3c=np.random.uniform(-0.5,1,100) 4d=np.hstack((a,b)) 5e=np.hstack((d,c)) 6plt.plot(e) 7plt.show() 8 9コード
このデータから振幅が激しい部分を含めたarray raw150を取り出したいとすると
np.max(e)で最大値を計算して、その前後を取り出すような方法だといまいちだと思うのですが、何か最適ないい方法がありますでしょうか。
追記
python
1num=10 #移動平均の個数 2b=np.ones(num)/num 3 4e_=np.convolve(e, b, mode='same')#移動平均 5f=e-e_ 6f=f*f 7f_=np.convolve(f,b,mode="same") 8plt.plot(e,label="original") 9plt.plot(f_,label="ido_heikin") 10plt.grid() 11plt.legend() 12plt.show()
回答1件
あなたの回答
tips
プレビュー