31 lines
929 B
Matlab
31 lines
929 B
Matlab
function counts = spikecounts(spikes, w)
|
|
% Compute vector of spike counts.
|
|
%
|
|
% counts = spikecounts(spikes, w)
|
|
%
|
|
% Arguments:
|
|
% spikes: a cell array of vectors of spike times in seconds
|
|
% w: observation window duration in seconds for computing the counts
|
|
%
|
|
% Returns:
|
|
% counts: vector of spike counts
|
|
|
|
% collect spike counts:
|
|
tmax = spikes{1}(end);
|
|
counts = [];
|
|
for k = 1:length(spikes)
|
|
times = spikes{k};
|
|
% method 1: count the number of spikes in each window:
|
|
% for tk = 0:w:tmax-w
|
|
% nn = sum((times >= tk) & (times < tk+w));
|
|
% %nn = length(times((times >= tk) & (times < tk+w)));
|
|
% %nn = length(find((times >= tk) & (times < tk+w)));
|
|
% counts = [counts nn];
|
|
% end
|
|
% method 2: use the hist() function to do that!
|
|
tbins = 0.5*w:w:tmax-0.5*w;
|
|
nn = hist(times, tbins);
|
|
counts = [counts nn];
|
|
end
|
|
end
|