如何使用列表选择试验?

时间:2013-03-06 06:00:58

标签: list matlab trial

我有6个.abf个文件,每个文件的维度为150000 by 2 by x,其中x与1 to 10不同。 x代表录音的试验。所以我必须在MATLAB中处理这6个文件,我通过循环遍历每个文件并对每个文件进行后续处理。但是对于每个试验,即使其中有10个被记录,但并非所有10个都有所需的数据,我需要排除少量试验,并且每个试验都包含少量试验。例如,从第一个文件,我需要试验1到4进行处理,而在第二个文件中我需要试验1到6进行处理。我怎样才能做到这一点?有没有办法在一开始就列出每个文件的试验?

1 个答案:

答案 0 :(得分:1)

这是一个非常简单的方法。如果您只有6个文件,则可以定义试验以包含在函数顶部。

% Specify list of trials to include
dataFiles(1).name = 'file1.abf';
dataFiles(1).includedTrials=[1:4];

dataFiles(2).name = 'file2.abf';
dataFiles(2).includedTrials=[1:6];

% iterate over data files
for n = 1:nFiles
    % Load data
    data = load(datafiles(2).name);

    % Select data of trials based on your list
    data = data(:,:,dataFiles(n).includedTrials);

    % Do processing
end