如何在Matlab的eeglib函数中使用变量

jchrr9hc  于 2022-12-27  发布在  Matlab
关注(0)|答案(1)|浏览(162)

我尝试使用Matlab的eeglib工具包中的以下函数来重命名事件,这些事件满足一定的条件(例如,它们的延迟在两个数字之间):

EEGfastrts = pop_selectevent( EEG, 'latency',’0 <= fastval’,'type',{'AnyResponse'},'renametype','FastRTs','deleteevents','off','deleteepochs','off','invertepochs','off');

但是,当我输入变量(即fastval)而不是int值时,这个函数就不起作用了。
我想知道是否有人有建议/解决方法来使用这个函数来处理一个由变量表示的值。我的目标是将这个函数插入到一个循环中,它将在每次迭代中改变变量的值。
提前感谢您的想法和意见。

lb3vh1jj

lb3vh1jj1#

docs中,它期望'latency'的输入是一个字符,所以你需要使用你的变量来创建它。一个选项是使用sprintf(),例如:

fastval = 100; % some value
strLatency = sprintf( '0 < %.2f', fastval ); % output e.g. '0 < 100.00'

然后在函数调用中使用它...

EEGfastrts = pop_selectevent( EEG, 'latency', strLatency, ...
    'type', {'AnyResponse'}, 'renametype', 'FastRTs', ...
    'deleteevents', 'off', 'deleteepochs', 'off', 'invertepochs', 'off');

相关问题