以下代码在我自己运行时起作用:
range = multi_sptime(100,end);
binary_input = binary_input2(1:range);
ssignal = signal(1:range);
signal = ssignal;% input current
clear input2
clear binary_input2
dbstop if error
但是,当我添加此for
循环时:
neurons=[1,2,4,6,8,10,15,20,25,30,35,40,50,100,200];
for ncell=neurons
...
我收到以下错误:
??? Index exceeds matrix dimensions.
Error in int_idc20 (line 8)
ssignal = signal(1:range);
如何修复它以及发生了什么?
答案 0 :(得分:3)
首先,我认为您想要遍历neurons
中的元素数量,因此请更正for
行:
for ncell=1:numel(neurons)
然后根据您的需要在循环中使用ncell
或neurons(ncell)
。
其次,range
是一个标量,它在最后一个元素中查找multi_sptime
行#100,显然它吐出的数字大于元素数signal
。尝试size(signal)
看看你有什么。