48 lines
1.5 KiB
Python
48 lines
1.5 KiB
Python
import nixio as nix
|
|
import os
|
|
import numpy as np
|
|
from IPython import embed
|
|
|
|
def read_baseline_eod(dataset):
|
|
base = dataset.split(os.path.sep)[-1] + ".nix"
|
|
nix_file = nix.File.open(os.path.join(dataset, base), nix.FileMode.ReadOnly)
|
|
b = nix_file.blocks[0]
|
|
if 'BaselineActivity_1' in b.tags:
|
|
t = b.tags["BaselineActivity_1"]
|
|
elif "BaselineActivity_2" in b.tags:
|
|
t = b.tags["BaselineActivity_2"]
|
|
else:
|
|
f.close()
|
|
return [],[]
|
|
eod_da = b.data_arrays["LocalEOD-1"]
|
|
eod = t.retrieve_data("LocalEOD-1")[:]
|
|
time = np.asarray(eod_da.dimensions[0].axis(len(eod)))
|
|
nix_file.close()
|
|
return time, eod
|
|
|
|
|
|
def read_baseline_spikes(dataset):
|
|
base = dataset.split(os.path.sep)[-1] + ".nix"
|
|
nix_file = nix.File.open(os.path.join(dataset, base), nix.FileMode.ReadOnly)
|
|
b = nix_file.blocks[0]
|
|
if 'BaselineActivity_1' in b.tags:
|
|
t = b.tags["BaselineActivity_1"]
|
|
elif "BaselineActivity_2" in b.tags:
|
|
t = b.tags["BaselineActivity_2"]
|
|
else:
|
|
f.close()
|
|
return [],[]
|
|
spikes_da = b.data_arrays["Spikes-1"]
|
|
spike_times = spikes_da[:spikes_da.shape[0]-5000]
|
|
baseline_spikes = spike_times[(spike_times > t.position[0]) & (spike_times < (t.position[0] + t.extent[0]))]
|
|
nix_file.close()
|
|
return baseline_spikes
|
|
|
|
|
|
if __name__ == "__main__":
|
|
data_dir = "../data"
|
|
dataset = "2018-11-09-ad-invivo-1"
|
|
time, eod = read_baseline_eod(os.path.join(data_dir, dataset))
|
|
spike_times = read_baseline_spikes(os.path.join(data_dir, dataset))
|
|
|