赞
踩
转载自公众号:路同学
作者:路同学
Hello,
这里是行上行下,我是喵君姐姐~
在之前所发布的“MNE-Python的简易中文教程简单入门”中,我们介绍了使用MNE来对EEG/MEG进行预处理;
另外,在发布的“MNE进阶教程|实例详解EEG/MEG数据读取”教程中,主要介绍了以一个公开数据为案例,详解基于MNE-Python的从“原数据”到“可处理数据”的读取流程。
随后,发布的“MNE-Python简易教程|解析EEG/MEG数据中的事件信息”教程中,详解如何从EEG/MEG数据中解析出事件信息,即介绍MNE-Python中的事件信息的读取。
以及,在发布的“MNE-Python简易教程|EEG/MEG数据的伪影识别、修复坏道以及去除坏段”中,详细的介绍了数据预处理的核心阶段:伪影的处理。
接下来,我们详解利用MNE-Python进行数据滤波与降采样。
数据滤波
首先还是导入example数据方便后续说明:
import numpy as npimport mnefrom mne.datasets import sampledata_path = sample.data_path()raw_fname = data_path + '/MEG/sample/sample_audvis_raw.fif'# 使用0-20ms的数据tmin, tmax = 0, 20raw = mne.io.read_raw_fif(raw_fname)raw.crop(tmin, tmax).load_data()# 计算时排除两个坏道raw.info['bads'] = ['MEG 2443', 'EEG 053']# 设置频率范围:2-300Hzfmin, fmax = 2, 300# 选择右侧颞叶的导联selection = mne.read_selection('Left-temporal')# 挑选导联:仅MEG 且 去除坏道 且 右侧颞叶导联picks = mne.pick_types(raw.info, meg='mag', eeg=False, eog=False, stim=False, exclude='bads', selection=selection)
可以画出功率谱图如下:
raw.plot_psd(area_mode='range', picks=picks, average=False)
使用陷波滤波器去噪:
之前介绍过电力线噪音,数据在60Hz、120Hz、180Hz和240Hz存在窄频率峰值,我们使用notch_filter()进行陷波滤波器对数据进行滤波:
raw.notch_filter(np.arange(60, 241, 60), picks=picks)raw.plot_psd(area_mode='range', picks=picks, average=False)
使用低通滤波器去噪:
使用滤波方法filter()进行50Hz的低通滤波:
raw.filter(None, 50.)raw.plot_psd(area_mode='range', picks=picks, average=False)
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。