Can someone advise how I fix this loop?

1 vue (au cours des 30 derniers jours)
DavidL88
DavidL88 le 5 Juin 2020
Commenté : DavidL88 le 10 Juin 2020
I am using a MatLab based interface for processing EEG files collected from 59 subjects. The below code works but only for 1 file and I have 59 files I want a result from. sFiles filters the files stored in this interface and correctly returns 59 files. However, sStudy only returns a result for the first file. How do I run a loop on the below code so I can get 'n' for all 59 files? I would like to get the result 'n' for each file along with the subject name (in sFiles as SubjectName).
sFiles = bst_process('CallProcess', 'process_select_search', [], [], ...
'search', '(([name CONTAINS "resample"]))');
sStudy = bst_get('Study', sFiles.iStudy);
DataMat = in_bst_data(sStudy.Data(i).FileName);
n = numel(DataMat.F.events(3).times)

Réponse acceptée

Sulaymon Eshkabilov
Sulaymon Eshkabilov le 5 Juin 2020
Hi,
That would be somewhat in this way:
for ii = 1:59
sFiles(ii).iStudy = bst_process('CallProcess', 'process_select_search', [], [], ...
'search', '(([name CONTAINS "resample"]))');
sStudy = bst_get('Study', sFiles(ii).iStudy);
DataMat = in_bst_data(sStudy.Data(ii).FileName);
n(ii) = numel(DataMat.F.events(ii).times);
end
  5 commentaires
Sulaymon Eshkabilov
Sulaymon Eshkabilov le 10 Juin 2020
Is that working ok, now? if so, hit accept the answer. Thx.
DavidL88
DavidL88 le 10 Juin 2020
Hi Sulaymon,
That was the right approach thanks. I had to change the variables.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by