Hello,
i am calculating a coherence analysis (MScohere NxN) with 30 subjects (2 groups, 2 conditions, each conditions consists out of three runs). Each run has 30 preprocessed epochs with 4 seconds. I calculated Mscohere for each epoch. Is there an option to get the averaged coherence values over the different frequency bands (alpha etc.)? At the moment I can only extract data for every 0,5 Hz. For example, when calculating PLV a clustering in frequency bands is possible.
Thank you very much!

Hi @christinakehm,
Indeed, there is process for this Frequency > Group in time or frequency bands.
- Select Group by frequency bands
- Then input the bands to compute in each row as:
bandName / freq1, freq2 / function
Note: By default Brainstorm uses the cannonical frequency bands (delta, theta, ...). If you change these band definitions, they can be reset with:
> Reset options (more info)
Best,
Raymundo
Hey,
averaging the data by frequency bands was successful, thanks again! To determine group effects I planned to export the data to SPSS. Is there in Option to get the coherence data values in a row? If I export the Data to Excel I get Matrices (similar to a classic correlation matrix), but instead I would need the data in a wide-format (e. g. F4xF4 = x, F4xF3 = y, F4x.....). Is there an option in brainstorm to get the data arranged like this?
Thank you very much in advance.
Greetings
Christina
Is there in Option to get the coherence data values in a row?
The simplest option is maybe to script this.
For example:
ConnectFile = '/.../.../timefreq_connectn_....mat';
ConnectMat = in_bst_timefreq(ConnectFile);
R = bst_memory('GetConnectMatrix', ConnectMat);
for iFreq = 1:size(R,4)
fid = fopen(sprintf('test-freq%d.txt', iFreq), 'wt');
for iRow = 1:length(ConnectMat.RefRowNames)
for iCol = 1:length(ConnectMat.RowNames)
fprintf(fid, '%sx%s\t%f\n', ConnectMat.RefRowNames{iRow}, ConnectMat.RowNames{iCol}, R(iRow, iCol, 1, iFreq));
end
end
fclose(fid);
end