Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- clear all
- clc
- load('P300data.mat')
- epochs = extract_epochs(P300Data(:,4),flash_times,flash_ids,0.1*Fs,0.6*Fs);
- p2p_vals = peak2peak(epochs.data, 2);
- epochs.data = epochs.data(p2p_vals < 100, :);
- epochs.ids = epochs.ids(p2p_vals < 100);
- target_erp = mean(epochs.data(epochs.ids == 2, :), 1);
- nontarget_erp = mean(epochs.data(epochs.ids == 1, :), 1);
- hold on
- times = ((1:size(epochs.data,2)) - 0.1*Fs)/Fs;
- plot(times, target_erp)
- plot(times, nontarget_erp)
- xlabel('Time (ms)')
- ylabel('Potential (uV)')
- legend('Target', 'Non-target')
- var = epochs.data;
- features = p300_features(var');
- function features = p300_features(data)
- features = zeros(size(data, 1), 3);
- for i=1:size(data, 1)
- x = data(i, :);
- extracted = x(2393:4189);
- [~,index]=max(x);
- features(i, 1) = mean(extracted);
- features(i, 2) = peak2peak(extracted);
- features(i, 3) = index;
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement