Saltar al contenido principal
LibreTexts Español

4.12: Ejercicio- Creación e Importación de Formas de Onda Artificiales

  • Page ID
    151828
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \(\newcommand{\avec}{\mathbf a}\) \(\newcommand{\bvec}{\mathbf b}\) \(\newcommand{\cvec}{\mathbf c}\) \(\newcommand{\dvec}{\mathbf d}\) \(\newcommand{\dtil}{\widetilde{\mathbf d}}\) \(\newcommand{\evec}{\mathbf e}\) \(\newcommand{\fvec}{\mathbf f}\) \(\newcommand{\nvec}{\mathbf n}\) \(\newcommand{\pvec}{\mathbf p}\) \(\newcommand{\qvec}{\mathbf q}\) \(\newcommand{\svec}{\mathbf s}\) \(\newcommand{\tvec}{\mathbf t}\) \(\newcommand{\uvec}{\mathbf u}\) \(\newcommand{\vvec}{\mathbf v}\) \(\newcommand{\wvec}{\mathbf w}\) \(\newcommand{\xvec}{\mathbf x}\) \(\newcommand{\yvec}{\mathbf y}\) \(\newcommand{\zvec}{\mathbf z}\) \(\newcommand{\rvec}{\mathbf r}\) \(\newcommand{\mvec}{\mathbf m}\) \(\newcommand{\zerovec}{\mathbf 0}\) \(\newcommand{\onevec}{\mathbf 1}\) \(\newcommand{\real}{\mathbb R}\) \(\newcommand{\twovec}[2]{\left[\begin{array}{r}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\ctwovec}[2]{\left[\begin{array}{c}#1 \\ #2 \end{array}\right]}\) \(\newcommand{\threevec}[3]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\cthreevec}[3]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \end{array}\right]}\) \(\newcommand{\fourvec}[4]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\cfourvec}[4]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \end{array}\right]}\) \(\newcommand{\fivevec}[5]{\left[\begin{array}{r}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\cfivevec}[5]{\left[\begin{array}{c}#1 \\ #2 \\ #3 \\ #4 \\ #5 \\ \end{array}\right]}\) \(\newcommand{\mattwo}[4]{\left[\begin{array}{rr}#1 \amp #2 \\ #3 \amp #4 \\ \end{array}\right]}\) \(\newcommand{\laspan}[1]{\text{Span}\{#1\}}\) \(\newcommand{\bcal}{\cal B}\) \(\newcommand{\ccal}{\cal C}\) \(\newcommand{\scal}{\cal S}\) \(\newcommand{\wcal}{\cal W}\) \(\newcommand{\ecal}{\cal E}\) \(\newcommand{\coords}[2]{\left\{#1\right\}_{#2}}\) \(\newcommand{\gray}[1]{\color{gray}{#1}}\) \(\newcommand{\lgray}[1]{\color{lightgray}{#1}}\) \(\newcommand{\rank}{\operatorname{rank}}\) \(\newcommand{\row}{\text{Row}}\) \(\newcommand{\col}{\text{Col}}\) \(\renewcommand{\row}{\text{Row}}\) \(\newcommand{\nul}{\text{Nul}}\) \(\newcommand{\var}{\text{Var}}\) \(\newcommand{\corr}{\text{corr}}\) \(\newcommand{\len}[1]{\left|#1\right|}\) \(\newcommand{\bbar}{\overline{\bvec}}\) \(\newcommand{\bhat}{\widehat{\bvec}}\) \(\newcommand{\bperp}{\bvec^\perp}\) \(\newcommand{\xhat}{\widehat{\xvec}}\) \(\newcommand{\vhat}{\widehat{\vvec}}\) \(\newcommand{\uhat}{\widehat{\uvec}}\) \(\newcommand{\what}{\widehat{\wvec}}\) \(\newcommand{\Sighat}{\widehat{\Sigma}}\) \(\newcommand{\lt}{<}\) \(\newcommand{\gt}{>}\) \(\newcommand{\amp}{&}\) \(\definecolor{fillinmathshade}{gray}{0.9}\)

    A lo largo de los años, he descubierto que aplicar filtros a formas de onda artificiales realmente me ha ayudado a entender cómo funcionan los filtros y si podrían estar distorsionando significativamente mis datos. De hecho, primero me interesé en cómo funcionan los filtros cuando usé un filtro inapropiado y descubrí mi error al filtrar una forma de onda artificial (ver cuadro de texto a continuación). Como resultado, siempre animo a otras personas a intentar filtrar formas de onda artificiales, especialmente si no van a seguir mis consejos estándar sobre filtrar de 0.1 a 20 o 30 Hz. Incluso creé algunas formas de onda artificiales de ejemplo para ir junto con el capítulo de filtrado en Luck (2014) y las puse a disposición en línea en el sitio web del editor. Aquí, voy a explicar cómo se pueden hacer formas de onda artificiales en Excel e importarlas a ERPLAB.

    Cómo evité la vergüenza filtrando una forma de onda artificial

    Cuando estaba en la escuela de posgrado, tuve la suerte de pasar bastante tiempo con Bob Galambos, quien fue el mentor de mi propio mentor, Steve Hillyard. Bob se había jubilado muchos años antes, pero aún así venía de vez en cuando a las reuniones de laboratorio. Fue un científico increíble, entre otras cosas, él y su amigo Donald Griffin fueron las personas que primero demostraron que los murciélagos navegan usando la ecolocalización (Griffin y Galambos, 1941). Aprendí mucho de tenerlo cerca.

    Un día, Bob y yo cocinamos una idea para un experimento que implicó grabar tanto ERPs como el electrorretinograma (ERG; ver el siguiente cuadro de texto). Bob se ofreció como voluntario para ser el sujeto. Desafortunadamente, aunque era un gran científico, no era un muy buen sujeto, y los datos eran muy ruidosos.
    Esa noche, procesé los datos, y las grabaciones fueron un desastre. En un intento de limpiar los datos, apliqué un filtro muy fuerte (algo así como 2-8 Hz, 48 dB/octava). No sólo quitó el ruido, sino que reveló que los estímulos habían disparado oscilaciones tanto en los ERPs como en los ERG. Las oscilaciones apenas se estaban convirtiendo en un tema candente, y pensé que había descubierto algo nuevo e importante. ¡Seguramente me volvería famoso!

    Pero luego me di cuenta de algo: Las grabaciones incluían pulsos de calibración de onda cuadrada, y los pulsos de calibración filtrados contenían las mismas oscilaciones que estaba viendo en los ERPs y ERG. Eso me hizo darme cuenta de que las oscilaciones fueron inducidas artificialmente por el filtro y no eran señales que estuvieran presentes en los datos. Le pregunté a uno de los estudiantes de posgrado, Marty Woldorff, sobre las oscilaciones, y me explicó cómo los filtros muy afilados pueden producir oscilaciones artificiales. Detalló que un filtro es como una campana: Pones una breve entrada en una campana (golpeando el chapajo), y la salida de la campana es una oscilación.
    Esa experiencia de ver cómo un filtro impactó una señal artificial (el pulso de calibración) me interesó en aprender más sobre los filtros. Y me salvó de la vergüenza que seguramente habría sentido si hubiera intentado escribir un artículo alegando que había descubierto oscilaciones en los ERPs y ERG.

    Creé todas las formas de onda artificiales para este capítulo en Excel. Puede encontrar una copia del archivo de hoja de cálculo, que se llama artificial_data.xlsx, en la carpeta Chapter_4. Si no tienes Excel, puedes importarlo a Google Sheets. La primera pestaña tiene las formas de onda, con una columna separada para cada forma de onda. Creé la forma de onda similar a ERP que se muestra en la Captura de Pantalla 4.1 sumando tres componentes ERP simulados, cada uno de los cuales es solo un ciclo de una función coseno. Puedes ver las fórmulas en la hoja de cálculo. También verás columnas para crear ruido de 60 Hz y ruido blanco. También hay columnas para impulsos en diferentes momentos.

    Las otras hojas están diseñadas para sacar las formas de onda de los archivos ERPset separados que creé para los ejercicios. Estas hojas solo copian los valores relevantes de la primera hoja (a veces con modificaciones). Para crear un ERPSet a partir de una hoja determinada, guarda la hoja como un archivo de texto y luego la importa a ERPLAB.

    Como ejemplo, vamos a crear un archivo de texto para la hoja de formas de onda, que contiene las formas de onda que se muestran en la Captura de Pantalla 4.1. Vaya a esta hoja en Excel y seleccione Excel > Archivo > Guardar como. A continuación, seleccione Texto delimitado por tabulaciones (.txt) como formato de archivo y guarde el archivo usando waveforms.txt como nombre de archivo. Tenga en cuenta que con este formato de archivo, Excel guarda solo la hoja actual como archivo de texto.

    El archivo de texto resultante se organiza con la columna más a la izquierda que contiene la latencia de cada punto de muestra y la otra (s) columna (s) que contiene los valores de voltaje para los sitios de electrodo individuales. Con este enfoque, solo se puede tener un bin por archivo de texto.

    Ahora vamos a importar el archivo de texto a ERPLAB como un ERPSet. Salga y reinicie EEGLAB y, a continuación, seleccione EEGLAB > ERPLAB > Exportar e importar ERP > Importar ERP desde texto (universal). Esto abrirá la ventana que se muestra en la Captura de Pantalla 4.14. La herramienta de importación le permite especificar múltiples archivos de texto, cada uno de los cuales se almacenará como un bin separado. Sin embargo, sólo vamos a importar un archivo de texto y crear un bin. Para ello, haz clic en el botón Agregar archivo ERP y selecciona el archivo waveforms.txt que creaste en el paso anterior. Luego lo verás en la lista de archivos de texto a importar, designados como Papelera 1 (ver Captura de Pantalla 4.14).

    Captura de pantalla 4.14

    Ahora necesitamos proporcionar a la herramienta de importación alguna información sobre el formato del archivo de texto. Para la estructura general del archivo, haga clic en la opción points=rows & electrodes=column (que indica que cada línea es un punto de tiempo y cada columna es un electrodo). Verifique que las etiquetas de los electrodos existan caja, ya que la primera línea del archivo de texto contiene las etiquetas para los electrodos. Marque el cuadro de valores de tiempo existen, porque la columna situada más a la izquierda contiene los valores de tiempo. Si no tuviéramos los valores de tiempo en el archivo de texto, podríamos indicar la frecuencia de muestreo y el rango de tiempo, y la herramienta de importación calcularía la latencia para cada punto de tiempo.

    Una vez que todo esté configurado como se muestra en la captura de pantalla, haga clic en Aceptar Luego verá el cuadro de diálogo estándar para nombrar y guardar el nuevo ERPSet. Se le puede nombrar formas de onda. No es necesario guardarlo, porque ya tiene el archivo con estas formas de onda en la carpeta Chapter_4 (waveforms.erp). Por último, debes trazar las formas de onda y verificar que se vean como las de la Captura de Pantalla 4.1.

    ¡Eso es! Ahora puedes usar Excel para crear cualquier tipo de forma de onda artificial que te guste y luego importarla a ERPLAB. Luego puede ver cómo se cambia la forma de onda por diferentes configuraciones de filtro. Como dije antes, definitivamente querrás hacer esto si filtras más agresivamente que mi recomendación estándar de 0.1 a 30 Hz.

    El electrorretinograma (ERG)

    El ERG es una señal similar a EEG generada por la retina. Tengo un punto débil en mi corazón por el ERG, porque así es como me inicié en electrofisiología. Me tomé un año libre a mitad de la universidad y conseguí un trabajo como asistente de investigación para Martha Neuringer en el Centro Nacional de Investigación de Primates de Oregón. Trabajé en un estudio de los efectos de la privación de ácidos grasos omega-3 en el desarrollo del sistema visual en monos rhesus infantiles.

    Martha registró el ERG como una de nuestras medidas de resultado. Ella anestesió a los monos y luego puso un electrodo de propósito especial en la córnea para registrar la señal ERG. Esta señal se amplificó luego y se grabó en una grabadora especial. Luego conduciríamos a un laboratorio diferente a 10 millas de distancia, donde usamos una computadora gigantesca para digitalizar las señales, promediar entre pruebas y cuantificar la amplitud de la señal ERG. Esto llevaba mucho tiempo, así que me encargaron escribir software para una Apple II, la primera computadora personal convencional, que nos permitiera grabar directamente el ERG (¡en disquetes!) y hacer el promedio y análisis. Esto me inició en el camino hacia la investigación ERP.

    Bob Galambos me enseñó un truco para registrar más fácilmente el ERG de humanos usando pequeños electrodos EEG colocados en los párpados inferiores en lugar de un electrodo colocado directamente en el ojo. El truco es colocar un electrodo debajo de cada ojo y poner un parche opaco sobre un ojo. Cuando se presenta un estímulo visual, obtienes actividad de ERG más actividad EEG del electrodo bajo el ojo sin parchear, y obtienes actividad EEG casi idéntica del ojo sin parches del electrodo, pero sin la actividad ERG. Si usa el electrodo debajo del ojo sin parchear como sitio activo y el electrodo debajo del ojo parcheado como sitio de referencia, el EEG (que es casi idéntico en ambos electrodos) se resta, dejando solo el ERG. Esta fue una de las muchas cosas que aprendí de Bob.


    This page titled 4.12: Ejercicio- Creación e Importación de Formas de Onda Artificiales is shared under a CC BY 4.0 license and was authored, remixed, and/or curated by Steven J Luck directly on the LibreTexts platform.