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/pointprocesses/lecture/dattomat.py

22 lines
556 B
Python

import sys
import numpy as np
import scipy.io as io
file = sys.argv[1]
with open(file, 'r') as sf:
x = []
for line in sf:
line = line.strip()
if len(line) > 0 and line[0] != '#':
x.append(float(line))
spikes = np.array(x)*0.001
# break the single spiketrain in trials of 5 seconds:
trials = []
w = 5.0
for t0 in np.arange(0.0, spikes[-1], w):
trials.append(spikes[(spikes>=t0)&(spikes<t0+w)]-t0)
data = {'spikes': trials}
io.savemat(file.replace('.dat', '.mat'), data)