{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "\n\n# Getting averaging info from .fif files\n\nParse averaging information defined in Elekta Vectorview/TRIUX DACQ (data acquisition).\nExtract and average epochs accordingly. Modify some averaging parameters and get epochs.\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "# Author: Jussi Nurminen (jnu@iki.fi)\n#\n# License: BSD-3-Clause\n# Copyright the MNE-Python contributors." ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "import os\n\nimport mne\nfrom mne.datasets import multimodal\n\nfname_raw = os.path.join(multimodal.data_path(), \"multimodal_raw.fif\")\n\n\nprint(__doc__)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Read raw file\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "raw = mne.io.read_raw_fif(fname_raw)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Check DACQ defined averaging categories and other info\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "print(raw.acqparser)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Extract epochs corresponding to a category\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "cond = raw.acqparser.get_condition(raw, \"Auditory right\")\nepochs = mne.Epochs(raw, **cond)\nepochs.average().plot_topo(background_color=\"w\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Get epochs from all conditions, average\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "evokeds = []\nfor cat in raw.acqparser.categories:\n cond = raw.acqparser.get_condition(raw, cat)\n # copy (supported) rejection parameters from DACQ settings\n epochs = mne.Epochs(\n raw, reject=raw.acqparser.reject, flat=raw.acqparser.flat, **cond\n )\n evoked = epochs.average()\n evoked.comment = cat[\"comment\"]\n evokeds.append(evoked)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Make a new averaging category\n\n" ] }, { "cell_type": "code", "execution_count": null, "metadata": { "collapsed": false }, "outputs": [], "source": [ "newcat = dict()\nnewcat[\"comment\"] = \"Visual lower left, longer epochs\"\nnewcat[\"event\"] = 3 # reference event\nnewcat[\"start\"] = -0.2 # epoch start rel. to ref. event (in seconds)\nnewcat[\"end\"] = 0.7 # epoch end\nnewcat[\"reqevent\"] = 0 # additional required event; 0 if none\nnewcat[\"reqwithin\"] = 0.5 # ...required within .5 s (before or after)\nnewcat[\"reqwhen\"] = 2 # ...required before (1) or after (2) ref. event\nnewcat[\"index\"] = 9 # can be set freely\n\ncond = raw.acqparser.get_condition(raw, newcat)\nepochs = mne.Epochs(raw, reject=raw.acqparser.reject, flat=raw.acqparser.flat, **cond)\nepochs.average().plot(time_unit=\"s\")" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.2" } }, "nbformat": 4, "nbformat_minor": 0 }