1

我是巴特沃斯过滤器的新手,想具体了解我的结果。

数据具有日期和相对速度变化列。(行数为764)

data=pd.read_csv('dtt_median_ZZ-f1-m10_f07_1.csv')
date=data.Date
data=data.M*(-100)

def butter_bandpass(lowcut, highcut, fs, order=5):
    nyq=0.5*fs
    low=lowcut/nyq
    high=highcut/nyq
    b,a=butter(order, [low,high],btype='band')
    return b, a

def butter_bandpass_filter(data,lowcut,highcut,fs,order=5):
    b,a = butter_bandpass(lowcut, highcut, fs, order=order)
    y=lfilter(b,a,data)
    return y

F=butter_bandpass_filter(data, 1, 20, 200, 3)
#print(F)


plt.plot(date, F)
plt.show()

在此处输入图像描述

  1. 我想指定 x 轴是频域还是时域。

  2. 如果是频域,有什么办法可以将其转换为时域(fft?)因为我必须控制周期才能看到周期内的变化

  3. 我用于获取数据的采样率为 200Hz,但我认为这段代码中的采样率与它不同。那么 fq(采样率)的变化是什么?

  4. 低切,高切的正常变化是什么?我使用 0.7-1.0Hz 从原始数据中导出数据。但我认为我必须使用不同的频率变化。

4

0 回答 0