python - 如何使用 Python 读取 .gdf 文件
问题描述
我正在为我的大学项目处理存储在“.gdf”文件中的 EEG 信号数据。我的目标是使用 Python 打开该文件。到目前为止,我可以使用 MNE 包打开该文件。代码是:
import os
import numpy as np
import mne
raw=mne.io.read_raw_gdf('1.gdf')
print(raw.info)
结果,我得到:
Extracting EDF parameters from C:\Users\Gamer\Desktop\1.gdf...
GDF file detected
Setting channel info structure...
Creating raw.info structure...
<Info | 7 non-empty values
bads: []
ch_names: AFz, F3, F1, Fz, F2, F4, FFC5h, FFC3h, FFC1h, FFC2h, FFC4h, ...
chs: 64 EEG
custom_ref_applied: False
highpass: 0.0 Hz
lowpass: 128.0 Hz
meas_date: 2017-04-04 12:50:01 UTC
nchan: 64
projs: []
sfreq: 256.0 Hz
>
现在,我的问题是:
- 如何以表格形式获取值?
- 如何使用 Python 知道数据集的维度?
- 有什么方法可以将 .gdf 文件转换为 .csv 文件或任何其他格式(如 pandas 数据框)?
数据集描述可在http://bnci-horizon-2020.eu/database/data-sets/001-2019/dataset_description_v1-1.pdf获得
解决方案
欢迎使用堆栈溢出和 mne-python!:)
如何使用 Python 知道数据集的维度?
如果您尝试打印已阅读的原始文件(而不仅仅是其 info 属性),您应该能够看到尺寸。原始文件总是存储在 mne python channels-first 中,因此数据数组的维度是channels x samples
.
如何以表格形式获取值?
如果您对数组没问题,您可以通过.get_data()
方法获取它(请参阅此处的文档)。如果您更喜欢 pandas 数据框,您可以通过raw.to_data_frame()
( docs ) 获得它。
但在获取数据数组/表之前,您可能需要执行过滤(例如raw.filter(1, None)
)、注释坏数据段(教程)、插入坏通道(教程)和执行 ICA(教程)。通常,您尝试进行的分析很可能是在 mne 中实现的,或者使用 mne 对象更容易执行。
确保在 mne docs中查看许多丰富的教程和示例。如果您还有其他问题,我们现在使用 Discourse:https ://mne.discourse.group/
推荐阅读
- javascript - NodeJs Array.join 在数组的每个部分上都有文本
- python - 当您最终需要一个列表时,Python 生成器的内存节省功能
- python - Django 错误:“ModuleNotFoundError:没有名为‘classroom’的模块”
- c# - 如何拦截 DbContext 中的 ModelBuilder 实例?
- reactjs - Lighthouse 认为打字机动画是布局转变
- c# - Unity、C#、2D:如何将 UI 画布项(按钮)位置设置为与另一个游戏对象相同的位置?
- wordpress - 将可变产品价格范围替换为“来自:”+ WooCommerce 中使用 number_format 的最低价格
- java - Java接口和信息输出到控制台的问题
- python - 如何使用烧瓶在 html 中显示相同的缩进 json 内容
- spring-boot - Springboot GraphQL:错误的获取请求:路径不是模式'/json'