0
raw, timestamp = ur.MNE_Read_EDF(path)
mne_events, events_dict = ev.MNE_prepare_events(path, timestamp)
epochs = mne.Epochs(raw, mne_events, events_dict, tmin=-0.5, tmax=0.5)
signal = epochs.plot(block=True)

这看起来很简单,但我迷路了。我在 edf 文件中有原始 eeg 信号,在 csv 文件中有事件。我设法通过这些事件创建纪元,然后用标记的事件绘制原始信号,但是我需要将其传输到可在 matlab 中访问的文件中。我猜我不能将 scipy.io.savemat 用于情节?我不能简单地将这些文件加载​​到 matlab 中,因为它以某种方式使时期不同步,可能是由于平均采样频率。MNE 不这样做,但必须在 matlab 中进行进一步分析。非常感谢您的帮助,我在 MNE 网站上找不到答案。

4

1 回答 1

1

要获取原始 epochs 数据,您可以调用.get_data()Epochs 类的方法。这将为您提供一个 3D numpy 形状数组(n_epochs、n_channels、n_times)。

要获取您的事件数据,您可以使用该find_events函数,该函数将返回events

回报:

事件:数组,形状 = (n_events, 3)

找到的所有事件。第一列包含样本中的事件时间,第三列包含事件 ID。对于 output = 'onset' 或 'step',第二列包含紧接在事件/步骤之前的刺激通道的值。对于 output = 'offset',第二列包含事件偏移后的刺激通道的值。

mne_events实际上,您的示例中可能已经包含您的事件数据。

可以使用scipy.io.savemat您提到的功能保存这些数据。

于 2018-04-20T10:18:33.027 回答