步骤 02:信息检查
通过 raw.info 与 raw.plot 验证 Raw 对象状态
1. 目标
确认 Raw 对象的采样率、通道数、单位、低通/高通滤波状态等关键参数,在动手修改前先看清"原始状态",避免基于错误前提做后续处理。
2. 何时使用 / 何时跳过
- 必须使用:每次新加载数据后、做任何修改前
- 不可跳过:单位错误、采样率错误、通道类型错误等 90% 的"玄学 bug"都源于此
3. 前置条件
- 已执行步骤 01:
raw对象已创建且preload=True
4. 核心代码
Python
import mne
# ====== 打印整体信息 ======
print(raw)
# 输出示例:<Raw | sample_raw.fif | 376 ch | 1000 Hz | 277.7 s>
# ====== 详细 Info ======
print(raw.info)
# ====== 关键字段提取 ======
print(f"sampling frequency: {raw.info['sfreq']} Hz")
print(f"highpass corner: {raw.info['highpass']} Hz")
print(f"lowpass corner: {raw.info['lowpass']} Hz")
print(f"channel count: {len(raw.ch_names)}")
print(f"first 10 channels: {raw.ch_names[:10]}")
print(f"duration: {raw.times[-1]:.2f} s")
# ====== 检查通道类型分布 ======
from collections import Counter
type_counter = Counter(raw.get_channel_types())
print(dict(type_counter))
# 期望:{'eeg': 60, 'eog': 2, 'ecg': 1, 'stim': 1} 等
5. 关键字段详解
| 字段 | 含义 | 期望值 |
|---|---|---|
sfreq |
采样率 | 250 / 500 / 1000 / 2048 Hz |
highpass |
已应用的高通(Hz) | 通常 0.0 / 0.1 Hz(在线高通) |
lowpass |
已应用的低通(Hz) | 通常 100 / 200 / 500 Hz |
ch_names |
通道名列表 | 严格区分大小写,必须用原始字符串 |
nchan |
通道数 | 应与设备配置一致 |
subject_info |
被试信息 | 可能为空,需手动设置 |
6. 验证方法
Python
# 验证 1:必备检查清单
checks = {
'采样率 > 0': raw.info['sfreq'] > 0,
'通道数 > 0': len(raw.ch_names) > 0,
'有时长': raw.times[-1] > 0,
'包含 EEG 通道': 'eeg' in raw.get_channel_types(),
}
for k, v in checks.items():
print(f"{'✓' if v else '✗'} {k}")
assert all(checks.values()), "原始数据信息异常,请检查来源"
# 验证 2:可视化前 30 秒
raw.plot(duration=30, n_channels=30, scalings='auto')
# 人工核对:是否有异常大振幅、平坦线、漂移
# 验证 3:PSD 检查
raw.plot_psd(fmax=200)
# 期望:50 Hz / 60 Hz 附近有明显工频尖峰
7. 常见错误
| 错误信息 | 原因 | 解决方案 |
|---|---|---|
单位显示为 V 但实际是 µV |
设备元数据错误 | 用 raw.apply_function(lambda x: x*1e6) 手动换算 + 步骤 05 校正 |
lowpass 显示为 None |
文件未记录在线滤波 | 以设备手册为准,建议在步骤 08 重新带通 |
ch_names 出现 'EEG 001' 这种带空格名 |
BrainVision 导出格式 | 用 raw.rename_channels(lambda x: x.strip().replace(' ', '')) |
| 看不到 EOG 通道 | 通道类型被默认归为 EEG | 立即进入步骤 03 修正 |
subject_info 为 None |
被试元数据缺失 | 不影响预处理,但影响 mne.Report 输出 |
8. 官方来源
| 资源类型 | 链接 |
|---|---|
Raw.info 文档 |
https://mne.tools/stable/generated/mne.io.Raw.html |
Info 类详解 |
https://mne.tools/stable/generated/mne.Info.html |
get_channel_types |
https://mne.tools/stable/generated/mne.io.Raw.html#mne.io.Raw.get_channel_types |
plot_psd |
https://mne.tools/stable/generated/mne.io.Raw.html#mne.io.Raw.plot_psd |
| 数据探索教程 | https://mne.tools/stable/auto_tutorials/intro/10_overview.html |
9. 学术引用
无需单独引用。若使用 mne-bids-pipeline 标准流程:
Pernet, C. R., et al. (2020). Issues and recommendations from the OHBM COBIDAS MEEG committee for reproducible EEG and MEG research. Nature Neuroscience, 23(12), 1473-1483. https://doi.org/10.1038/s41593-020-00709-0