Skip to content

第7章: MNE-Pythonへの橋渡し

第6章 — ソース推定からの続きです。これがBrainstormトラックの最終章です。

ここまでで、このリポジトリの中で同じ大きな流れ — インポート、前処理、エポック化、平均化、ソース推定 — を、一度はMNE-Pythonのコードとして、もう一度はBrainstormのクリック操作として、2回たどってきました。この最終章では、両者を直接つなげます。

共有されているサンプルデータ

MNE-Pythonにはmne.datasets.brainstormというデータセットモジュールが同梱されており、もともとBrainstorm公式チュートリアル用データとして配布されていた記録(聴覚刺激、安静時、ファントム計測など)が含まれています。つまり、正真正銘Brainstorm由来のデータを、そのままMNE-Python上で読み込み、ここでクリックして進めたのとよく似た処理をコードとして実行できます。両方のツールへの理解を、同一のデータ上で照らし合わせて確認できる、良い方法です。

2つのツール間でのファイルの受け渡し

  • Brainstorm → MNE-Python: Brainstormは、記録・頭部モデル・ソース結果を、MNE-Pythonが直接読み込める形式(通常の.matファイルや、FieldTrip互換の構造体を含む)にエクスポートできます。
  • MNE-Python → Brainstorm: MNE-Pythonが書き出した.fifファイル(生データ、エポック、順モデル/逆モデル)は、第3章で使ったのと同じReview raw fileのインポート手順で、そのままBrainstormのデータベースに取り込めます。

どちらのツールも、データを閉じ込めてしまうことはありません。片方で途中まで処理したデータを、もう片方で続きから処理することも、たいてい可能です。

作業に応じたツールの選び方

  • Brainstormを使うと良い場面 — 素早く、視覚的で、探索的な解析をしたいとき。プロジェクトの共同研究者がコードを書かないとき。描画コードを書かずに仕上がった3Dのソース図がほしいとき。
  • MNE-Pythonを使うと良い場面 — 多数の被験者に対してまったく同じ処理を実行するパイプラインが必要なとき。コードとしてバージョン管理や査読の対象にする必要があるとき。統計解析や機械学習など、他のPython解析と組み合わせる必要があるとき。

実際の多くのプロジェクトでは、両方が使われています。まずBrainstormで1人か2人の被験者を探索し内容を確認してから、最終的なパイプラインをMNE-Pythonのスクリプトとして書き起こし、データセット全体に適用する、という流れです。

この先へ

こうした概念を実行可能なコードとして見てみたい場合は、MNE-PythonのトラックのEEGの基礎ERP解析の章が、このパイプラインのセンサーレベルの部分をコードで扱っています。また、自分のデータへの応用は、自分自身の記録に対してこれを実行するためのテンプレートです。

以上でBrainstormトラックは終わりです。お読みいただきありがとうございました。