This repository has been archived on 2021-05-17. You can view files and clone it, but cannot push or open issues or pull requests.
scientificComputing/programming/exercises/STA/sta.m
2014-10-30 17:46:29 +01:00

18 lines
544 B
Matlab

function [st_avg, std_sta, valid_spikes]= sta(stimulus, spike_times, count, sampling_rate)
snippets = zeros(numel(spike_times), 2*count);
valid_spikes = 1;
for i = 1:numel(spike_times)
t = spike_times(i);
index = round(t*sampling_rate);
if index <= count || (index + count) > length(stimulus)
continue
end
snippets(valid_spikes,:) = stimulus(index-count:index+count-1);
valid_spikes = valid_spikes + 1;
end
snippets(end-(end-valid_spikes):end,:) = [];
st_avg = mean(snippets, 1);
std_sta = std(snippets,[],1);