rdarie / Data-Analysis

Borton Lab LFP Neural Data Analysis
0 stars 0 forks source link

Synchronized segments have a t_start of -500 #8

Open rdarie opened 5 years ago

rdarie commented 5 years ago

ephyviewer starts at -500 instead of 0

rdarie commented 5 years ago
dataReader = neo.io.nixio_fr.NixIO(
    filename=experimentDataPath)
trialReader = neo.io.nixio_fr.NixIO(
    filename=analysisDataPath)
>>> for segIdx in range(dataReader.header['nb_segment'][0]):
...     print('t_start = {}'.format(dataReader.get_signal_t_start(0, segIdx))
t_start = -500.0
t_start = 1910.179
t_start = 4124.171
t_start = 6190.415000000001
>>> for segIdx in range(trialReader.header['nb_segment'][0]):
...     print('t_start = {}'.format(trialReader.get_signal_t_start(0, segIdx)))
t_start = -500.0
>>> insReader = neo.io.nixio_fr.NixIO(
...     filename=insDataPath)
>>> for segIdx in range(insReader.header['nb_segment'][0]):
...     print('t_start = {}'.format(insReader.get_signal_t_start(0, segIdx)))
t_start = 0.0
>>> nspReader = neo.io.nixio_fr.NixIO(
...     filename=trialBasePath)
>>> for segIdx in range(nspReader.header['nb_segment'][0]):
...     print('t_start = {}'.format(nspReader.get_signal_t_start(0, segIdx)))
t_start = 0.0
rdarie commented 5 years ago

After, https://github.com/rdarie/Data-Analysis/blob/15b9a5040cf8d4a90cdd1814c5f1440c1111a418/dataAnalysis/analysis-code/makeTrialAnalysisNix.py#L67

nspReader = neo.io.nixio_fr.NixIO(filename=trialBasePath)
nspBlock = preproc.readBlockFixNames(nspReader, block_index=0)
dataBlock = hf.extractSignalsFromBlock(
    nspBlock, keepSpikes=True)

>>> nspReader.get_signal_t_start(0,0)
0.0
>>> nspBlock.segments[0].t_start
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "c:\users\radu\documents\github\python-neo\neo\core\segment.py", line 108, in t_start
    t_starts += [e.times[0] for e in self.epochs + self.events if len(e.times) > 0]
  File "c:\users\radu\documents\github\python-neo\neo\core\segment.py", line 108, in <listcomp>
    t_starts += [e.times[0] for e in self.epochs + self.events if len(e.times) > 0]
AttributeError: 'EventProxy' object has no attribute 'times'

>>> dataBlock.segments[0].t_start
array(-500.) * s
>>> for ev in dataBlock.filter(objects=Event):
...     if len(ev.times):
...         print('{}.t_start={}'.format(ev.name, ev.times[0]))
...     else:
...         print('{} has no times'.format(ev.name))
seg0_rig_property.t_start=167.6113
seg0_rig_value.t_start=167.6113
seg0_digital_input_port has no times
seg0_serial_input_port has no times
seg0_comments has no times
seg0_ins_value.t_start=60.05306486328972
seg0_ins_property.t_start=60.0530648632897
>>> dataBlock.filter(objects=Epoch)
[]

https://github.com/rdarie/python-neo/blob/7042f1712564e9005a62ae0b04ed52f973489c2e/neo/core/segment.py#L102-L108

>>> for st in dataBlock.segments[0].filter(objects=SpikeTrain):
...     if len(st.times):
...         print('{}.t_start={}'.format(st.name, st.t_start))
...     else:
...         print('{} has no times'.format(st.name))
...
seg0_elec55#0.t_start=-500.0
seg0_elec89#0.t_start=-500.0
seg0_elec77#1.t_start=-500.0
seg0_elec1#0.t_start=-500.0
>>> for st in nspBlock.segments[0].filter(objects=SpikeTrainProxy):
...     print('{}.t_start={}'.format(st.name, st.t_start))
seg0_elec55#0.t_start=-500.0
seg0_elec89#0.t_start=-500.0
seg0_elec77#1.t_start=-500.0
brmReader = neo.io.BlackrockIO(
    filename=trialBasePath.replace('nix', 'ns5'))
brmBlock = brmReader.read_block(
    block_index=0, lazy=True, signal_group_mode='split-all')
for st in brmBlock.segments[0].filter(objects=SpikeTrainProxy):
    print('{}.t_start={}'.format(st.name, st.t_start))
ch1#0.t_start=0.0
ch2#0.t_start=0.0
ch3#0.t_start=0.0
ch4#0.t_start=0.0
>>> tdcReader = neo.io.nixio_fr.NixIO(
...     filename=spikePath)
>>> tdcBlock = tdcReader.read_block(
...     block_index=0, lazy=True, signal_group_mode='split-all')
>>> for st in tdcBlock.segments[0].filter(objects=SpikeTrainProxy):
...     print('{}.t_start={}'.format(st.name, st.t_start))
elec69#0.t_start=0.0
elec39#0.t_start=0.0
elec29#0.t_start=0.0
rdarie commented 5 years ago

I caused the -500 offset! here: https://github.com/rdarie/Data-Analysis/blob/15b9a5040cf8d4a90cdd1814c5f1440c1111a418/dataAnalysis/helperFunctions/helper_functions.py#L1129-L1136