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)


/home/heberto/miniconda2/lib/python2.7/site-packages/numpy/core/numeric.py:190: VisibleDeprecationWarning: using a non-integer number instead of an integer will result in an error in the future
  a = empty(shape, dtype, order)
Out[3]:
0.01768504567993949

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()