From e00d5ae79d0c2fc1be636c6b9f06fd31258a8e98 Mon Sep 17 00:00:00 2001 From: Jan Grewe Date: Mon, 16 Sep 2019 19:54:44 +0200 Subject: [PATCH] reading baseline data from nix works --- baseline_analysis.py | 79 -------------------------------------------- 1 file changed, 79 deletions(-) delete mode 100644 baseline_analysis.py diff --git a/baseline_analysis.py b/baseline_analysis.py deleted file mode 100644 index 78479da..0000000 --- a/baseline_analysis.py +++ /dev/null @@ -1,79 +0,0 @@ -import datajoint as dj -import os -import numpy as np -from database import Dataset, Repro -schema = dj.schema("fish_book", locals()) - - -class BaselineData(object): - - def __init__(self, dataset:Dataset): - self.__data = [] - self.__dataset = dataset - self._get_data() - - - def _get_data(self): - if not self.__dataset: - self.__data = [] - self.__data = [] - - repros = (Repro & self.__dataset & "repro_name like 'BaselineActivity%'") - for r in repros: - self.__data.append(self.__read_data(r)) - - def __read_data(self, r:Repro): - if self.__dataset["has_nix"]: - return self.__read_data_from_nix(r) - else: - return self.__read_data_from_directory(r) - - @property - def dataset(self): - return self.__dataset - - @property - def data(self, index:int=0): - return self.__data[0] if len(self.__data) >= index else None - - @property - def size(self): - return len(self.__data) - - def __str__(self): - str = "Baseline data of %s " % self.__dataset - - def __read_data_from_nix(self, r)->np.ndarray: - # FIXME! - return np.asarray([]) - - def __read_data_from_directory(self, r)->np.ndarray: - data = [] - data_source = os.path.join(self.__dataset["data_source"], "basespikes1.dat") - if os.path.exists(data_source): - found_run = False - with open(data_source, 'r') as f: - l = f.readline() - while l: - if "index" in l: - index = int(l.strip("#").strip().split(":")[-1]) - found_run = index == r["run"] - if l.startswith("#Key") and found_run: - data = self.__do_read(f) - break - l = f.readline() - - return data - - def __do_read(self, f)->np.ndarray: - data = [] - f.readline() - f.readline() - l = f.readline() - while l and "#" not in l and len(l.strip()) > 0: - data.append(float(l.strip())) - l = f.readline() - return np.asarray(data) - -if __name__ == "__main__": - print("Test") \ No newline at end of file