Hola. Me llamo Jon Peirce. Soy profesor de la Universidad de Nottingham. Soy el creador de Psychopy. En este video les voy a ensenar como crear un sencillo experimento en Psychopy. Vamos a usar el efecto "Stroop" Cuando abres Psychopy te encontraras con dos ventanas La primera es el "builder", la cual te permite crear tus experimentos graficamente (solo con botones) y el otro es el "coder", el cual te permite crear los experimentos usando programacion en caso de que quieras escribir el experimento directamente. Hoy vamos a crear el experimento con el "builder". El "builder" tiene 3 paneles Tiene tambien "componentes", y una o mas "rutinas". En este caso tenemos hecha una unica rutina llamada "trial" (ensayo) que tiene un flujo que te ayuda a combinar distintas rutinas. Para el caso de la tarea "stroop", vamos a necesitar un objeto de texto como parte de nuestro "trial" ya que necesitamos mostrar palabras a los sujetos. Creemos un objeto de texto entonces. Le vamos a llamar "target". Lo haremos que aparezca a los 0.5 segundos y que dure por 5 segundos. Noten que cada uno de estos parametros al situarme con el mouse encima, me dan un consejo para informarme acerca de lo que se espera que yo incluya. Hay tambien un boton de ayuda. Si hago click en el me llevara al sitio de Psychopy, donde se encuentra una informacion mas detallada sobre como usar el componente en particular. Por ahora no vamos a agregar ni el color ni el texto del objeto de texto que estamos creando. Eso lo vamos a hacer mas tarde. Haciendo click en "OK", vemos el objeto de texto que aparece ahora en nuestra rutina y si queremos editarlo simplemente hacemos click en el icono de nuevo y podemos volver y cambiar nuestro estimulo. Podriamos querer presentarlo por 4 segundos en vez de 5, Asi que ya cambiamos asi su presentacion. Para esta tarea, tambien necesitamos que los sujetos respondan, asi que agreguemos un teclado a esta rutina. Lo vamos a llamar "response". Lo haremos partir tambien en los 0.5 segundos. No queremos que los sujetos puedan responder antes de que el estimulo es presentado Lo hare que tenga duracion infinita. Si dejamos el espacio en blanco, el teclado va a estar disponible para siempre. Vamos a dejar las "allowed keys" (teclas permitidas) como estan. Vamos a volver a ellas mas tarde, cuando configuremos nuestros ensayos. OK. Ahora sabemos que nuestro teclado va a durar para siempre. Entonces, asi es como se va a ver un ensayo en terminos generales para la tarea "Stroop". Pero necesitamos, obviamente, correr mas de un ensayo y por ahora tenemos esta rutina apareciendo solamente una vez en nuestro flujo. Insertemos un loop sobre el ensayo para que podamos repetirlo Si hago click en "Insert Loop" (insertar loop) una sola vez, y selecciono, de nuevo con un solo click, donde quiero que el loop comience y termine, Se abre una ventana, preguntando como le llamare a este loop. Le vamos a poner "trials", bien simple. Debiera ser "random" (aleatorio) o "sequential" (secuencial) en elegir la siguiente condicion? Digamos aleatorio. Tendremos cinco repeticiones, y tendremos que ir y especificar nuestro "archivo de condiciones". Ahora, notemos que esta preguntando por un ensayo, un archivo que puede ser CSV o XLSX. Tenemos que salir e ir a Excel para crear nuestro archivo de condiciones. Y hacer click en "OK". Veras que Psychopy insertara un loop sobre el trial. Grabemos ahora el experimento para que no lo perdamos. Grabado. Voy a crear una nueva carpeta en mi escritorio que voy a llamar "Stroop" y al archivo "Stroop Experiment". OK. La forma mas simple de definir condiciones para tu experimento es usar una tabla de Excel. Asi podemos crear los parametros para nuestro experimento, como la palabra que vamos a presentar, o el color que tendra la palabra, y asi podemos crear distintas condiciones. Especificamos una por fila. Para la tarea "Stroop", podemos por ejemplo usar la palabra "red" escrita en rojo. Tambien podemos tener la palabra "red" escrita en verde. Podemos tener la palabra "green" escrita en verde, etc. "Green" en azul. "Blue" en azul. "Blue" en rojo. Voy a llevar un registro acerca de si son o no congruentes. No necesitamos hacerlo ahora. Siempre se puede dejar para despues, pero es conveniente tenerlos grabados. Entonces, a congruente le doy, digamos, el valor "1" que significa "true" (verdadero) y "0" para "false" (falso). Esto va a ser util mas adelante. Ahora necesitamos especificar cual es la respuesta correcta, porque Psychopy querra saber si el sujeto respondio correctamente o no. A esto le voy a llamar "corrAns". Estos parametros no pueden usar ningun tipo de puntuacion o espacio en sus nombres. Asi que voy a sacarle el espacio y darle una letra mayuscula para especificar la respuesta correcta En este caso, vamos a usar las teclas "left" (izquierda) "down" (abajo), y "right" (derecha) del teclado Entonces, voy a especificar ese "red" y recordemos que en la tarea "Stroop" a los sujetos se les pide reportar el color del texto antes que la palabra en si. Entonces, cuando el color es rojo, les voy a pedir a los sujetos que presionen "left" (izquierda). Esa es la tecla "left" (izquierda) Cuando es verde debieran presionar "down" (abajo) "Down" de nuevo. Cuando el color es "blue" tienen que presionar "right" "Right" (derecha). Y ahora me salio "red" de nuevo, asi que debieran presionar "left" (izquierda). OK. Eso define seis condiciones distintas para nuestro experimento, con cuatro parametros diferentes. OK. Grabemos el archivo. Voy a usar la misma carpeta de mi experimento, aunque no es obligatorio. Y lo voy a llamar "conditions.xlsx". Es muy importante que el archivo lo grabes en formato XLSX. Psychopy no puede usar los antiguos archivos XLS. Hacemos click en "Grabar" (Save) y listo. Ahora tenemos que decirle a PsychoPy donde esta el archivo y como usarlo durante los ensayos. La forma de hacerlo es usando el cuadro de dialogo loop. Entonces, si haces click en el loop otra vez obtendremos las propiedades del loop y tendremos un archivo de condiciones. Si buscamos, podemos seleccionar el archivo que acabamos de crear, lo abrimos, y me dice que hay seis condiciones con cuatro parametros diferentes. Los parametros son color ("color"), word ("palabra"), congruent ("congruente") y correct answer ("respuesta correcta"). Ok? Si por alguna razon el archivo fuera invalido tal vez porque dejamos un espacio en alguno de los titulos de nuestras columnas entonces vamos a recibir una advertencia diciendonos que no vamos a poder usar el archivo o no nos mostraria los parametros. Ahora podemos hacer click en "OK". Esta mostrando que tenemos seis ensayos aleatorios repetidos cinco veces. Es decir, cinco repeticiones distintas de seis condiciones distintas. OK, ahora el archivo con las condiciones esta configurado aqui para que en cada repeticion durante el loop usemos una fila diferente. Todavia resta decirle al estimulo que parametros usar. Queremos que el color de nuestro estimulo sea determinado por el parametro color. Aqui he escrito "$colour", con una "u" porque asi asi es como lo escribimos en el archivo de Excel. Y el simbolo "$" es para decirle a Psychopy "Este no es un valor literal, es una variable." Ok? Entonces, va a partir y encontrar una variable llamada "colour" y ver cual es el valor actual de esa variable. Va a ser rojo o verde o azul. Tambien voy a configurarlo para que cambie en cada repeticion en vez de ser constante. Ok? No queremos que nuestro estimulo este fijo en un color en particular para todo el experimento. De la misma forma, el texto del estimulo "text" debiera ser la palabra que especificamos en el archivo de Excel y no debiera ser "word", debiera ser la variable "word" de modo que vaya y busque esa variable que va a ser red ("rojo") o green ("verde") o blue ("azul"). Y de nuevo, queremos que cambie en cada repeticion de esta rutina. Ok. Tambien necesitamos configurar la respuesta para que este basada en las condiciones. Por lo tanto tengo que cambiar las teclas que van a estar permitidas para que el sujeto responda. No queremos que usen el yes" o el "no". Queremos que usen "left", "right" and "down". Asi que noten que todas las teclas que quiero agregar tengo que separarlas por comas y tengo que poner comas invertidas alrededor de los nombres de cada tecla. Si lo dejo en blanco entonces todas las teclas estaran disponibles. Ok? Esto le permite al sujeto presionar cualquier tecla. Tambien tengo aqui "forceEndRoutine" activado. Dejamos que la respuesta sea infinita, pero apenas el sujeto presione una tecla va a forzar el termino del ensayo. Asi que eso es algo que nos sirve. Tambien vamos a grabar la respuesta correcta. De modo que si activo esa opcion, tenemos que decirle a PsychoPy cual es la respuesta correcta para este ensayo y su lo recuerdan, esto fue grabado como "corrAns". De nuevo, necesitamos usar "$corrAns" para especificar el hecho de que es un nombre de una variable no debiera ir a buscar una palabra llamada "corrAns" porque nunca la va a encontrar. Debe usar la variables variable "corrAns". Y asi estamos listos. OK. Grabamos. Ok, ya estamos casi listos. Esto debiera ser ya un experimento funcionando, pero tambien nos gustaria agregar algunas instrucciones para el sujeto. Voy a agregar una rutina. Cuando hago click en ese boton, me muestra la opcion "new" o "trial". Seleccionemos "new" y llamemosla "instructions". Me pregunta donde quiero insertar las instrucciones. No queremos que las inserte aca porque eso repetiria las instrucciones en cada ensayo. Pongamosla antes del loop. Y ahora podemos hacer click en la rutina de instrucciones y editarla. Entonces vamos a necesitar otro objeto de texto. Lo vamos a llamar "instrText", que empiece en el tiempo cero. Duracion? Lo hacemos infinito. Color blanco, perfecto. Y le vamos a dar el texto "Recuerde escoger el color de las letras, ignorando la palabra: izquierda=rojo, abajo=verde, derecha=azul Ok. Ahora, dado que hemos hecho que el texto dure para siempre le dimos duracion infinita, necesitamos asegurarnos de que el sujeto puede deshacerse de el. Entonces, vamos a hacer click en "keyboard" (teclado) y vamos a permitir cualquier tacla vamos a forzar el termino de la rutina, y no nos vamos a preocupar de grabar nada Lo hacemos que dure para siempre. Ok. Si te equivocas, debieras siempre poder ser capaz de presionar "escape" y todavia podras salir del experimento sin la necesidad de reiniciar el computador. Ok, voy a grabarlo de nuevo. Creo que ya estamos listos. Ok, echemosle una mirada rapida al cuadro de dialogo "Experiment Settings". En este dialogo, podemos controlar cosas como si el mouse va a estar o no visible durante el experimento, el color del fondo de pantalla, si va a presentarse en una ventana o en pantalla completa, si va a ser en la pantalla 1 o en la pantalla 2, en caso de que tengas varios monitores, y que tipo de archivos de datos you want to save out.te gustaria grabar. Asi que un monton de cosas utiles para controlar tu experimento. Ahora, en este punto podemos ver el codigo del programa. Que te va a permitir ir y tal vez aprender un poco de como funciona Python. Tiene alrededor de 220 lineas este experimento, asi que no es un codigo muy complicado. Pero no lo necesitamos. Podemos en realidad ir y correr el experimento haciendo click en el hombre verde que aparece corriendo. A menduo toma algunos segundos, especialmente la primera vez que el experimento corre. Asi que se paciente con el primero. Ahi estamos. Tenemos un cuadro de dialogo que aparece preguntando por el participante y el numero de la sesion. Eso tambien estaba controlado en la configuracion de nuestro experimento. En realidad no voy a correr el experimento. Eso se los dejo a ustedes. OK. Encontraron el tutorial util? Busquen en el menu de Demos mas ideas y espero que disfruten Psychopy!