Si vienes de Ibex y PCIbex: cómo importar un experimento de lectura a Potato
Importa a Potato un experimento de Ibex o de PCIbex Farm con potato import -f ibex: lectura autoadministrada, maze, valoraciones, respuestas con teclas y listas en cuadrado latino.
potato import -f ibex lee un experimento de Ibex o de PCIbex (PennController) y construye un proyecto de Potato con los mismos ítems, las mismas listas en cuadrado latino y el mismo tipo de ensayo principal. Desde Potato 2.12.0, una tarea de lectura autoadministrada, de maze, de aceptabilidad o de dos teclas puede ejecutarse con el reclutamiento, las encuestas y la exportación de Potato, o junto a una tarea de anotación.
Ibex ejecuta experimentos de procesamiento de oraciones en el navegador, y PCIbex Farm aloja scripts de PennController escritos en JavaScript. Potato no tiene una capa de scripting, así que el importador lee las partes de un script que tienen una forma fija y enumera el resto para que lo reconstruyas a mano.
Importar un experimento
Apunta el importador a la carpeta del experimento, la que contiene data_includes/ y chunk_includes/, como en la descarga de un proyecto de PCIbex Farm o de Ibex:
potato import -f ibex -i my_experiment/ -o my-study/
python potato/flask_server.py start my-study/config.yaml -p 8000Construcciones de Ibex que traduce el importador
| Ibex o PCIbex | Potato |
|---|---|
Template("table.csv", row => newTrial(...)) | Un ítem por fila del CSV, conservando todas las columnas |
newController("DashedSentence", {s: row.X}), o el DashedSentence clásico | Lectura autoadministrada en modo de ventana móvil |
newController("Maze", {s: row.X, a: row.Y}) | La tarea maze, con los distractores de row.Y |
newScale(N) con textos .before y .after, o el AcceptabilityJudgment clásico | Una escala likert de N puntos con esas etiquetas en los extremos |
newKey("F", "J") con newText(row.X) | Un ensayo cronometrado con esas teclas. Cambia el nombre de las etiquetas por lo que significan |
"Question" clásico después de una oración | Una pregunta de comprensión, con F y J para las dos primeras respuestas |
Una columna Group o List, o etiquetas clásicas ["condition", N] | Un factor entre sujetos list, un archivo de datos por lista y batch_assignment.group_by_condition: list |
Los ítems clásicos de Ibex etiquetados como ["condition", N] comparten el grupo N, y la lista k recibe la condición situada en la posición (k + N) mod (número de condiciones), la rotación habitual del cuadrado latino. Los ítems que quedan fuera del cuadrado van en todas las listas, con un ID distinto en cada una, porque Potato necesita que los ID de los ítems sean únicos en todos los archivos de datos (Flujo del experimento).
Las listas conservan los nombres que les da el experimento, como L1 o List1.
Partes que tienes que reconstruir
Estas partes de un experimento se dejan fuera, y la salida y IMPORT_REPORT.md enumeran cada una:
- los ítems y las plantillas de práctica;
- las pantallas
Message,FormyHtml; - la ordenación con
newTimer,SequenceyshuffleSequence; HeaderyFooter;newFunctiony el resto del JavaScript personalizado;- los elementos de imagen, audio y vídeo, y la grabación;
- cualquier plantilla cuya tabla no esté en
chunk_includes/.
Un ensayo que no sea de ninguno de los tipos traducidos se rechaza con un mensaje, igual que una importación que no tendría ítems o una plantilla de PCIbex a cuya tabla le falta la columna de estímulos. Estos casos se notifican como advertencias:
- una columna que la plantilla lee y que la tabla no tiene;
- celdas de estímulo vacías;
- dos ítems clásicos con la misma etiqueta en un mismo grupo. Se conservan ambos, ya que Ibex rota un grupo por posición.
Pon el consentimiento y las instrucciones en páginas de encuesta. Para una temporización de estímulos que los ensayos cronometrados no cubren, ejecuta la tarea en una página de jsPsych.
Lecturas adicionales
- Lectura autoadministrada y maze - Modos de presentación, datos por región y comprobaciones del servidor
- Flujo del experimento - Condiciones, listas y contrabalanceo
- Si vienes de jsPsych - Conceptos de jsPsych asociados a claves de configuración de Potato
- Importar proyectos - Todos los formatos que lee
potato import
Para detalles de implementación, consulta la documentación fuente.