From 17083a63ba6f83f7b8ed79e7d1f13d3669c888d3 Mon Sep 17 00:00:00 2001 From: Alexander van Meegen <a.van.meegen@fz-juelich.de> Date: Thu, 3 Dec 2020 13:16:03 +0100 Subject: [PATCH] Fix zero division errors --- multiarea_model/analysis_helpers.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/multiarea_model/analysis_helpers.py b/multiarea_model/analysis_helpers.py index d3bba17..a51c72c 100644 --- a/multiarea_model/analysis_helpers.py +++ b/multiarea_model/analysis_helpers.py @@ -538,7 +538,7 @@ def pop_cv_isi(data_array, t_min, t_max): for i in np.unique(data_array[:, 0]): intervals = np.diff(data_array[indices][ np.where(data_array[indices, 0] == i), 1]) - if (len(intervals) > 0): + if intervals.size > 0: cv_isi.append(np.std(intervals) / np.mean(intervals)) if len(cv_isi) > 0: return np.mean(cv_isi) @@ -668,8 +668,11 @@ def synchrony(data_array, num_neur, t_min, t_max, resolution=1.0): spike_count_histogramm = pop_rate_time_series( data_array, num_neur, t_min, t_max, resolution=resolution) mean = np.mean(spike_count_histogramm) - variance = np.var(spike_count_histogramm) - synchrony = variance / mean + std_dev = np.std(spike_count_histogramm) + if std_dev + mean != std_dev: # check for vanishing mean + synchrony = std_dev / mean + else: + synchrony = np.inf return synchrony -- GitLab