Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
df[eeg_channels].plot (subplots = True)
plt.savefig ('before_processing.png')
# demo for data serialization
DataFilter.write_file (data, 'test.csv', 'w')
restored_data = DataFilter.read_file ('test.csv')
restored_df = pd.DataFrame (np.transpose (restored_data))
print ('Data From the File')
print (restored_df.head ())
# demo how to perform signal processing
for count, channel in enumerate (eeg_channels):
if count == 0:
DataFilter.perform_bandpass (data[channel], BoardShim.get_sampling_rate (args.board_id), 15.0, 6.0, 4, FilterTypes.BESSEL.value, 0)
elif count == 1:
DataFilter.perform_bandstop (data[channel], BoardShim.get_sampling_rate (args.board_id), 5.0, 1.0, 3, FilterTypes.BUTTERWORTH.value, 0)
elif count == 2:
DataFilter.perform_lowpass (data[channel], BoardShim.get_sampling_rate (args.board_id), 9.0, 5, FilterTypes.CHEBYSHEV_TYPE_1.value, 1)
elif count == 3:
DataFilter.perform_highpass (data[channel], BoardShim.get_sampling_rate (args.board_id), 3.0, 4, FilterTypes.BUTTERWORTH.value, 0)
df = pd.DataFrame (np.transpose (data))
print ('Data After Processing')
print (df.head ())
plt.figure ()
df[eeg_channels].plot (subplots = True)
plt.savefig ('after_processing.png')
plt.savefig ('before_processing.png')
# demo for data serialization
DataFilter.write_file (data, 'test.csv', 'w')
restored_data = DataFilter.read_file ('test.csv')
restored_df = pd.DataFrame (np.transpose (restored_data))
print ('Data From the File')
print (restored_df.head (10))
# demo how to perform signal processing
for count, channel in enumerate (eeg_channels):
# filters work in-place
if count == 0:
DataFilter.perform_bandpass (data[channel], BoardShim.get_sampling_rate (args.board_id), 15.0, 6.0, 4, FilterTypes.BESSEL.value, 0)
elif count == 1:
DataFilter.perform_bandstop (data[channel], BoardShim.get_sampling_rate (args.board_id), 5.0, 1.0, 3, FilterTypes.BUTTERWORTH.value, 0)
elif count == 2:
DataFilter.perform_lowpass (data[channel], BoardShim.get_sampling_rate (args.board_id), 9.0, 5, FilterTypes.CHEBYSHEV_TYPE_1.value, 1)
elif count == 3:
DataFilter.perform_highpass (data[channel], BoardShim.get_sampling_rate (args.board_id), 3.0, 4, FilterTypes.BUTTERWORTH.value, 0)
elif count == 4:
DataFilter.perform_rolling_filter (data[channel], 3, AggOperations.MEAN.value)
elif count == 5:
DataFilter.perform_rolling_filter (data[channel], 3, AggOperations.MEDIAN.value)
# downsampling returns new numpy array
elif count == 6:
downsampled_data = DataFilter.perform_downsampling (data[channel], 2, AggOperations.EACH.value)
print ("Downsampled data for channel %d:" % channel)
print (downsampled_data)
df = pd.DataFrame (np.transpose (data))