wär schön, wenn mir jemand helfen könnt. Ich würde gerne den butter bandpass filter anwenden um ein EEG Signal (250Hz) zu filtern (6-11Hz). Dazu habe ich mir folgendes überlegt:
Code: Alles auswählen
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
if __name__ == "__main__":
fs = 250.0
lowcut = 6.0
highcut = 11.0
T=len(eeg)
nsamples=T*fs
t=range(0,T,1)
x=eeg[t]
y=butter_bandpass_filter(x, lowcut, highcut, fs, order=6)
Vielen Dank!