%  Preprocessing Steps
% -High pass filtering, 
% -Notch filtering (50 Hz) 
% -re-refeence average
%  x is the EEG data matix (m: channels x n: samples)
%  z is the preprocessed data
%  Please copy te_notch.m in the same folder

Fs=200; % Recording sampling rate
Fc=0.1; % Cut-off freq 
N=4;    % filter Order
[B, A] = butter(N,Fc*2/Fs, 'high');
[b, a]=te_notch;

[m,n]=size(x);
av=mean(x,1);
z=zeros(m,n);
for i=1:m
z(i,:)=filtfilt(b,a,filtfilt(B,A,x(i,:)-av));
end

save("data_preprocessed.mat","z");









