In [1]:
import numpy as np
import pylab as pl
from network_correlations import *
% matplotlib inline
T = 50. #[s] recording time of all the spiketrains
# load surrogate spiketrains for analysis
spiketrains = np.load('spiketrains.npy')
spiketrain1 = spiketrains[0]
spiketrain2 = spiketrains[1]
spiketrain3 = spiketrains[2]
spiketrain4 = spiketrains[3]
spiketrain5 = spiketrains[4]
In [2]:
spiketrainplot(spiketrains)
In [3]:
'''
ASSIGNMENT 1:
0) Have a look at the functions to compute the correlation coefficient rho_T and cross-covariance
function C(t) in 'network_correlations.py'
1) Compute the correlation coefficients and cross-covariance functions for the following pairs of
spiketrains provided:
- spiketrain1 and spiketrain3
- spiketrain2 and spiketrain3
- spiketrain1 and spiketrain2
- spiketrain1 with itself (the so called autocovariance function)
- spiketrain3 with itself
- spiketrain4 and spiketrain5
Interpret the data.
'''
cross_cov(spiketrain1, spiketrain2,T); corr_coeff(spiketrain1, spiketrain2, 200.,T)
Out[3]:
In [ ]:
'''
2) Try different time window sizes T. How does this change the measured correlation coefficient?
'''
window_size = range(10,210,10)
CorrCoeff = np.zeros(len(window_size))
for i, winsize in enumerate(window_size):
CorrCoeff[i]=corr_coeff(spiketrain2, spiketrain3, winsize,T)
pl.plot(window_size, CorrCoeff)
pl.xlabel('Windowsize [ms]')
pl.xlim([0,200])
pl.ylabel('$rho$')
pl.grid(True)
pl.show()