数组中的索引太多错误brian2python

2024-05-28 18:06:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用下面的代码将一个数组值与上一个数组值和下一个数组值进行比较,但是我在数组错误中得到了太多的索引,我想绕过它,但是我不知道怎么做

spikes=print(M.V[0])
#iterate in list of M.V[0] with three iterators to find the spikes
for i,x in enumerate(M.V[0]):
    if (i>=1):
        if x[i-1]<x[i] & x[i]>x[i+1] & x[i]>25*mV:
            spikes+=1
print(spikes)

我得到一个错误:

IndexError                                Traceback (most recent call last)
<ipython-input-24-76d7b392071a> in <module>
      3 for i,x in enumerate(M.V[0]):
      4     if (i>=1):
----> 5         if x[i-1]<x[i] & x[i]>x[i+1] & x[i]>25*mV:
      6             spikes+=1
      7 print(spikes)

~/anaconda3/lib/python3.6/site-packages/brian2/units/fundamentalunits.py in __getitem__(self, key)
   1306         single integer or a tuple of integers) retain their unit.
   1307         '''
-> 1308         return Quantity(np.ndarray.__getitem__(self, key), self.dim)
   1309 
   1310     def __getslice__(self, start, end):

IndexError: too many indices for array

请注意,M.V[0]本身就是一个数组


Tags: ofkeyinselfforif错误数组
1条回答
网友
1楼 · 发布于 2024-05-28 18:06:28

你说过“M.V[0]本身就是一个数组”。不过,你需要多说一点。M可能是https://brian2.readthedocs.io/en/stable/user/recording.html#recording-spikes中详述的StateMonitor对象。是这样吗

如果是这样的话,你需要给出完整的和最少的代码来理解你的细节。例如,在NeuronGroup对象中,您的神经元模型是什么?更重要的是,与其自己寻找spike事件,不如使用SpikeMonitor类,它可以极大地简化您的计划? Brian2中的SpikeMonitor类:https://brian2.readthedocs.io/en/stable/reference/brian2.monitors.spikemonitor.SpikeMonitor.html

相关问题 更多 >

    热门问题