add functionality to parse baseline spiketimes
This commit is contained in:
parent
5712b1bb84
commit
9ccf46f3c3
@ -33,6 +33,7 @@ class CellData:
|
||||
self.parser = dpf.get_parser(data_path)
|
||||
|
||||
self.base_traces = None
|
||||
self.base_spikes = None
|
||||
# self.fi_traces = None
|
||||
self.fi_intensities = None
|
||||
self.fi_spiketimes = None
|
||||
@ -41,7 +42,6 @@ class CellData:
|
||||
self.time_axes = None
|
||||
# self.metadata = None
|
||||
|
||||
|
||||
self.sampling_interval = self.parser.get_sampling_interval()
|
||||
self.recording_times = self.parser.get_recording_times()
|
||||
|
||||
@ -57,6 +57,12 @@ class CellData:
|
||||
else:
|
||||
return self.base_traces[trace_type]
|
||||
|
||||
def get_base_spikes(self):
|
||||
if self.base_spikes is None:
|
||||
self.base_spikes = self.parser.get_baseline_spiketimes()
|
||||
|
||||
return self.base_spikes
|
||||
|
||||
def get_fi_traces(self):
|
||||
raise NotImplementedError("CellData:get_fi_traces():\n" +
|
||||
"Getting the Fi-Traces currently overflows the RAM and causes swapping! Reimplement if really needed!")
|
||||
|
@ -18,6 +18,9 @@ class AbstractParser:
|
||||
def get_baseline_traces(self):
|
||||
raise NotImplementedError("NOT YET OVERRIDDEN FROM ABSTRACT CLASS")
|
||||
|
||||
def get_baseline_spiketimes(self):
|
||||
raise NotImplementedError("NOT YET OVERRIDDEN FROM ABSTRACT CLASS")
|
||||
|
||||
def get_fi_curve_traces(self):
|
||||
raise NotImplementedError("NOT YET OVERRIDDEN FROM ABSTRACT CLASS")
|
||||
|
||||
@ -48,6 +51,7 @@ class DatParser(AbstractParser):
|
||||
def __init__(self, dir_path):
|
||||
self.base_path = dir_path
|
||||
self.fi_file = self.base_path + "/fispikes1.dat"
|
||||
self.baseline_file = self.base_path + "/basespikes1.dat"
|
||||
self.stimuli_file = self.base_path + "/stimuli.dat"
|
||||
self.__test_data_file_existence__()
|
||||
|
||||
@ -63,9 +67,6 @@ class DatParser(AbstractParser):
|
||||
def spiketimes_available(self) -> bool:
|
||||
return True
|
||||
|
||||
def cell_get_metadata(self):
|
||||
raise NotImplementedError("NOT YET OVERRIDDEN FROM ABSTRACT CLASS")
|
||||
|
||||
def get_sampling_interval(self):
|
||||
if self.sampling_interval == -1:
|
||||
self.__read_sampling_interval__()
|
||||
@ -80,6 +81,15 @@ class DatParser(AbstractParser):
|
||||
def get_baseline_traces(self):
|
||||
return self.__get_traces__("BaselineActivity")
|
||||
|
||||
def get_baseline_spiketimes(self):
|
||||
spiketimes = []
|
||||
|
||||
for metadata, key, data in Dl.iload(self.baseline_file):
|
||||
spikes = data[:, 0]
|
||||
spiketimes.append(spikes)
|
||||
|
||||
return spiketimes
|
||||
|
||||
def get_fi_curve_traces(self):
|
||||
return self.__get_traces__("FICurve")
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user