首页 > 编程语言 > 详细

python读取.set文件

时间:2019-12-03 20:20:26      阅读:175      评论:0      收藏:0      [点我收藏+]

[toc]

本教程为脑机学习者Rose原创(转载请联系作者授权)发表于公众号:脑机接口社区(微信号:Brain_Computer).QQ交流群:903290195 技术分享图片

简介

本案例主要介绍如何读取eeglab示例文件.set. .set文件记录的是采集的信息,主要内容包括通道数,事件数,开始时间与结束时间等。

知识点

mne中使用mne.io.read_raw_eeglab()读取.set文件;

read_raw_eeglab()函数介绍:

mne.io.read_raw_eeglab(input_fname,
                       montage=‘deprecated‘,
                       eog=(), 
                       preload=False, 
                       uint16_codec=None,
                       verbose=None)  

参数解读

input_fname:.set文件的存放路径;  
montage=‘deprecated‘:该参数已经舍弃了。在0.19版本中,它的功能可以通过set_montage方法来实现;  
eog:指定eog通道的通道名称或索引,如果设置为auto,则使用包含eog和eye的通道名称。默认情况为空元组;  
preload:类型 str或者bool 如果为True,则数据将预加载到内存中,以满足更快速的索引;  
uint16_codec:类型 str | None 允许指定读取字符数组时应用的编解码器(比如,"latin1"或者"utf-8")

案例

#导入工具库
import mne
import matplotlib.pyplot as plt
  1. 利用mne.io.read_raw_eeglab来读取.set文件
"""
通过mne.io.read_raw_eeglab来读取.set文件
得到原始数据对象
"""
raw = mne.io.read_raw_eeglab("Eeglab_data.set",preload=False)
  1. 绘制从第5s开始,5s时间窗口长的原始数据
"""
绘制从第5s开始,5s时间窗口长的原始数据

start:指定开始绘制的时间
duration:要绘制的时间窗口

从该图中可以看出每个通道的数据波动情况
可以通过设置duration的大小来放大或缩小

这个有点类似于eeglab中,放大缩小功能。
这里相同大小的窗口显示更短时间的数据,相当于eeglab中的选中数据进行放大,
反之,即缩小。
"""
raw.plot(start=5, duration=5)
plt.show()

技术分享图片

"""
设置duration=1,相当于放大
"""
raw.plot(start=5, duration=1)
plt.show()

技术分享图片

  1. 通常raw的数据访问方式如下: data, times = raw[picks, time_slice]

picks:是根据条件挑选出来的索引; time_slice:时间切片

想要获取raw中所有数据,以下两种方式均可: data,times=raw[:] data,times=raw[:,:]

"""
获取1-3秒内的EEG数据
获取前5条 时间从1秒开始到3秒为止的数据
raw[:5,int(sfreq*1):int(sfreq*3)]
"""

sfreq=raw.info[‘sfreq‘]
data,times=raw[:5,int(sfreq*1):int(sfreq*3)]
plt.plot(times,data.T)
plt.title("Sample channels")

技术分享图片

脑机学习者Rose笔记分享,QQ交流群:903290195 更多分享,请关注公众号 技术分享图片

python读取.set文件

原文:https://www.cnblogs.com/RoseVorchid/p/11978623.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!