Mixed designs in events.tsv

Hi all,

we ran a n-back working memory task in our study and I am currently thinking about how to best prepare the events.tsv file for latter analysis but also for publication of the data set.

The task was designed according to a block design with alternating 0back and 3back blocks of 30 seconds length. Each of these blocks was made up of a sequence of target, non-target, and lure trials, which are not of primary concern for my primary analysis but may serve as nuissance covariates or so.

In general, I would like to convey trial and block information to other researchers who may come across my data set and who should easily understand how the data was assessed in the first place. According to my understanding there is no specific convention of how to bring these information together. I could either think of specifying a block based events.tsv (with onsets and durations referring to blocks) or a trial based version (e.g. with an additional custom column specifying the block_type) where the block timing would be more implicit.

I guess that many people have dealt with the issue before and I would strongly appreciate some advice on how this should be arranged for the sake of transparent data storage.

Best Regards, H

One way I could imagine doing this is explicitly having both block timing and trial type within the blocks listed by overlapping the onset time for the block and the block-type:

trial_type onset duration
0back 0 30
0back.target 0 10
0back.non-target 10 10
0back.lure 20 10
3back 30 30
3back.target 30 10
3back.non-target 40 10
3back.lure 50 10

A bit verbose and the end user would need to know a bit about the design to make sense of it, but it lets a person get at either set of information without having to do any special accounting.

Thanks for the reply. I tried to solve the issue by adding an additional column “task_type”, which describes the task of the current block:

onset duration trial_type response_time task_type
10.5198 25.176 non-target 622 0back
13.0374 25.176 non-target 344 0back
15.5393 25.176 non-target 362 0back
18.0412 25.176 non-target 612 0back

I now get a warning message (code: 82 - CUSTOM_COLUMN_WITHOUT_DESCRIPTION) from the bids validator telling me that the custom column “task_type” wasn’t defined in the corresponding *events.json file despite the json file has the following lines in it

“task_type”: {
"LongName: “nback condition”,
“Description”: “the experiment was designed according to a block design. task_type names the task (0- or 3-back) of each trial. Each task block consists of 14 trials”,
“Levels”: {
“0back”: “0back is a pure vigilance task where participants had to react to the presentation of the letter X”,
“3back”: “3back is the working memory condition where participants had to compare the current letter with the letter 3 trials before.”

Are there any suggestions on why this may be the case?
Many thanks in advance and best regards, H

Are there any suggestions on why this may be the case?

Does describing all of your columns in the JSON file (even onset, duration,…) solve your issue?

Did you check that the JSON file has a valid syntax and an appropriate nesting of keys?

Are you sure that the JSON file is indeed the file that the validator detects as a sidecar file to your TSV file? (or could you create a file that is “closer” to the TSV and name it JSON, completely disregarding the inheritance principle?)

Thanks for the reply. In fact, I just had forgotten a " after “LongName”. I am sorry having overseen this in advance.

Best Regards, H

1 Like