Improved spike statistik code.

This commit is contained in:
Jan Benda 2015-10-28 09:16:00 +01:00
parent a6842998ac
commit af933f9379
3 changed files with 75 additions and 7 deletions

View File

@ -5,11 +5,7 @@ function isivec = isis( spikes )
isivec = [];
for k = 1:length(spikes)
difftimes = diff( spikes{k} );
if ( size( difftimes, 1 ) == 1 )
isivec = [ isivec difftimes ];
elseif ( size( difftimes, 2 ) == 1 )
isivec = [ isivec difftimes' ];
end
isivec = [ isivec; difftimes(:) ];
end
end

View File

@ -8,8 +8,7 @@ function isicorr = isiserialcorr( isis, maxlag )
for k = 1:length(lags)
lag = lags(k);
if length( isis ) > lag+10
cc = corrcoef( [ isis(1:end-lag)', isis(1+lag:end)' ] );
isicorr(k) = cc( 1, 2 );
isicorr(k) = corr( isis(1:end-lag), isis(lag+1:end) );
end
end

View File

@ -0,0 +1,73 @@
%% load data:
clear all
% alternative 1:
% pro: no structs. contra: global unknown variables
load poisson.mat
whos
poissonspikes = spikes;
load pifou.mat;
pifouspikes = spikes;
load lifadapt.mat;
lifadaptspikes = spikes;
clear spikes;
% alternative 2:
% pro: clean code. contra: structs that we do not really know yet
clear all
x = load( 'poisson.mat' );
poissonspikes = x.spikes;
x = load( 'pifou.mat' );
pifouspikes = x.spikes;
x = load( 'lifadapt.mat' );
lifadaptspikes = x.spikes;
%% spike raster plots:
subplot(1, 3, 1);
spikeraster(poissonspikes, 1.0);
title('Poisson');
subplot(1, 3, 2);
spikeraster(pifouspikes, 1.0);
title('PIF OU');
subplot(1, 3, 3);
spikeraster(lifadaptspikes, 1.0);
title('LIF adapt');
%% isi histograms:
maxisi = 300.0;
subplot(1, 3, 1);
poissonisis = isis(poissonspikes);
isihist(poissonisis, 0.001);
xlim([0, maxisi])
title('Poisson');
subplot(1, 3, 2);
pifouisis = isis(pifouspikes);
isihist(pifouisis, 0.001);
xlim([0, maxisi])
title('PIF OU');
subplot(1, 3, 3);
lifadaptisis = isis(lifadaptspikes);
isihist(lifadaptisis, 0.001);
xlim([0, maxisi])
title('LIF adapt');
%% serial correlations:
maxlag = 10;
rrange = [-0.5, 1.05];
subplot(1, 3, 1);
isiserialcorr(poissonisis, maxlag);
ylim(rrange)
title('Poisson');
subplot(1, 3, 2);
isiserialcorr(pifouisis, maxlag);
ylim(rrange)
title('PIF OU');
subplot(1, 3, 3);
isiserialcorr(lifadaptisis, maxlag);
ylim(rrange)
title('LIF adapt');