From 2e2870a7e52a6c6136ad7a410821a05d35485432 Mon Sep 17 00:00:00 2001 From: Ramona Date: Mon, 12 Nov 2018 18:16:29 +0100 Subject: [PATCH] analysis --- code/analysis_rs.py | 56 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 code/analysis_rs.py diff --git a/code/analysis_rs.py b/code/analysis_rs.py new file mode 100644 index 0000000..3a3cdf8 --- /dev/null +++ b/code/analysis_rs.py @@ -0,0 +1,56 @@ +import numpy as np +import matplotlib.pyplot as plt +from read_baseline_data import * +from IPython import embed + +inch_factor = 2.54 +data_dir = '../data' +dataset = '2018-11-09-ad-invivo-1' +time, eod = read_baseline_eod(os.path.join(data_dir, dataset)) + +fig = plt.figure(figsize=(12/inch_factor, 8/inch_factor)) +ax = fig.add_subplot(111) +ax.plot(time[:1000], eod[:1000]) +ax.set_xlabel('time [ms]', fontsize=12) +ax.set_ylabel('voltage [mV]', fontsize=12) +plt.xticks(fontsize = 8) +plt.yticks(fontsize = 8) +fig.tight_layout() +plt.savefig('eod.pdf') + +#interspikeintervalhistogram, windowsize = 1 ms +#plt.hist +#coefficient of variation +#embed() +#exit() + +spikes = read_baseline_spikes(os.path.join(data_dir, dataset)) +interspikeintervals = np.diff(spikes) +fig = plt.figure() +plt.hist(interspikeintervals, bins=np.arange(0, np.max(interspikeintervals), 0.0001)) +plt.show() + +mu = np.mean(interspikeintervals) +sigma = np.std(interspikeintervals) +cv = sigma/mu +print(cv) + +# calculate zero crossings of the eod +# plot mean of eod circles +# plot std of eod circles +# plot psth into the same plot +# calculate vector strength + +threshold = 0; +shift_eod = np.roll(eod, 1) +eod_times = time[(eod >= threshold) & (shift_eod < threshold)] +sampling_rate = 40000.0 +eod_idx = eod_times*sampling_rate + +fig = plt.figure() +for i, idx in enumerate(eod_idx): + #embed() + #exit() + plt.plot(time[int(idx):int(eod_idx[i+1])], eod[int(idx):int(eod_idx[i+1])]) +plt.show() +