我们需要将神经科学动物行为训练课程的输出加载到我们的数据联合数据库管道中。我们使用一个名为Bpod的平台进行实验,该平台在 Arduino 上实现了一个有限状态机来控制硬件和记录事件。例如,我们希望能够分析每次试验的响应时间,即有限状态机中两个状态之间的时间间隔。
关于状态和事件时间的数据保存在每个试验的 matlab 结构中,每个状态都有一个字段,其中包含一个数组,其中包含该状态的开始和结束时间(状态可以在试验期间多次出现,因此数组例如,试验中的状态可以具有大小(3,2))。
我的问题是将这些数据存储在 datajoint 数据库中的最有效方法是什么?现在,我们有一个导入表 Trials,其中每个 Trial 都有一个条目。将每个状态的开始时间存储在某种部件表中具有浮点值的列中似乎是最有效的,但我不确定如何以编程方式执行此操作,因为(1)状态可以多次发生并且(2)无需为每个状态硬编码一个部分表(可能的状态列表也会随着我们随着时间的推移调整行为范式而变化,并且不必重建整个数据库来添加新状态会很好)。或者,我们最初设想 Trials 表中的每个状态都有一个列,但是数据必须是 blob,我猜这可能效率低得多?任何建议表示赞赏!