PythonTutorial

Pythonを使ったデータ解析その3

準備

ex3.zip をダウンロードして展開し,ex3.ipynbを開く

中身について

今回は地震計(geophone)から取得した時系列データから地面振動のスペクトルを求める.

FFTの計算

scipy.signalモジュールを使ってFFTをする.

パワースペクトル密度

パワースペクトル密度を計算するには, scipy.signal.welch を使う.

scipy.signal.welch(時系列データ, fs=サンプリングレート, window=窓関数(デフォルトはハニング), nperseg=1セグメントの長さ, noverlap=オーバーラップする長さ(デフォルトはnperseg/2))

welch はウェルチ法によるパワースペクトルの推定を行う関数.ウェルチ法は,

  1. 時系列をいくつかのセグメントに分ける
  2. それぞれのセグメントに窓関数をかける
  3. それぞれのセグメントについてFFTをしてパワースペクトル密度を計算する
  4. 求めたパワースペクトル密度の平均をとる という手順でパワースペクトル密度を推定する方法.特徴的なのは,セグメントをオーバーラップして分けていること. オーバーラップは50%にすることが多い.この時,例えばセグメント長全データ長の半分に取ればセグメント数は3, セグメント長全データ長の1/3に取ればセグメント数は5,といった感じになる.

トップ   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS