Creating a 5 row x 10 column word list

OS: Win 10
PsychoPy version (e.g. 1.84.x): v2022.2.4
Standard Standalone? Yes
What are you trying to achieve?: Random stimulus presentation in a tabular format

What did you try to make it work?: Various ‘text’ stimulus presentations

I am hoping to create a psychophysics/memory experiment for some patients I have with hippocampal damage. I want to present them with a 50-word list, presented as a 10 row by 5 column table from a word list generated in a previous experiment. Participants will be presented with 50 English words simultaneously on the screen and asked to memorize as many as possible for 0.5, 1, or 1.5 min. I have 10 lists of 50 words and want to present them according to a pre-experimentally determined psuedorandom order. As such I have the first 50 words as list1, the next 50 as list2, the next 50 as list etc. I have tried to point a text stimulus to these excel files with $list1 but it says that they are not defined. The lists have 50 rows and only 1 column. I am not too worried about the order in which the words (row 1, column 1 etc) are presented in but if they could be randomly assigned between participants then that would be ideal.

I have spent quite a bit of time reading old forums and I am not sure if there is an easy fix - I am sure there is but if anyone had ideas on how to generate a table from these words lists then I’d really appreciate it.

Sounds like a fun demo. I’ll make it later this week. The easiest way would be to put each list of words into a single cell, then split it and assign to text components in a code component. I already have demos which generate grid coordinates.

I’ve just written a demo which can present a grid of text elements:

Points on a grid | code | try it

Creates a list of points in a grid with an arbitrary number of rows and columns. The points are then shuffled and used to assign positions of either text, image, polygon or shape stimuli. The centre element can be skipped if desired.

In my demo the text is a digit ( str(Idx+1) ). However, it could easily be wordList[Idx]

You could generate wordList from a cell containing the words separated by spaces using wordList = Words.split(' ')