Skip to content

Download data: Matrix structure

The matrix structure packs the relevant measurements from an experiment in a series of one-, two-, or three-dimensional arrays. This format is ideal for numerical analysis and visualization.

When to use matrix structure

Matrix structure is ideal when you need:

  • Numerical arrays — Ready for matrix operations in MATLAB, Python, or R
  • Multi-dimensional data — Organize data by task, participant, and stimulus
  • Efficient storage — Compact binary format for large datasets

For hierarchical data with metadata, use Tree structure. For tabular data, use Table or Annotations.

Compatible file types

Matrix structure data is currently available in the MAT file type.

Dimensions

One dimension

In this case, the variables are vectors. Their content and length depends on the type of task (see below). If data for multiple participants or tasks was selected, these are in separate vectors, with the stimulus and/or task name in the name of the vector (e.g., confidence_JohnSmith). An array with stimulus names is provided as stimuli.

Two dimensions

The first dimension corresponds to the participations, the second to the stimuli. An additional array with participation IDs is provided as participation_ids.

Three dimensions

The first dimension corresponds to the tasks, the second to the participations, the third to the stimuli. An additional array with task names is provided (e.g., dragrate_tasks).

Availability by task type and dimensions

1D 2D 3D
Drag & Rate
Multiple Arrangement

Tasks

These are the matrix variables contained by task type:

Drag & Rate

  • property — Where the stimuli were placed on the y-axis. Values between 0 (bottom) and 1 (top).
  • confidence — Where the stimuli were placed on the x-axis. Values between 0 (left) and 1 (right).

Multiple Arrangement

  • rdmutv — The upper triangular vector of pairwise dissimilarities using Euclidean distance.

Loading matrix data

load('Meadows_MyStudy_3D.mat')

% Display available variables
whos

% Access the property and confidence arrays
disp(size(property))
disp(size(confidence))
from scipy.io import loadmat
import numpy as np

# Load the MAT file
data = loadmat('Meadows_MyStudy_3D.mat')

# Access the arrays
property_data = data['property']
confidence_data = data['confidence']
stimuli = data['stimuli']

# Check dimensions
print(f"Property shape: {property_data.shape}")
print(f"Confidence shape: {confidence_data.shape}")

Example

The three-dimensional matrix structure displayed in an Octave terminal. This experiment has 6 participants, 35 Drag & Rate tasks, and 345 stimuli:

>> load "Meadows_MyStudy_3D.mat"
>> whos
Variables in the current scope:

   Attr Name                   Size                     Bytes  Class
   ==== ====                   ====                     =====  =====
        confidence            35x6x345                 579600  double
        dragrate_tasks        35x41                      1435  char
        participation_ids      6x24                       144  char
        property              35x6x345                 579600  double
        stimuli              345x27                      9315  char

Total is 155794 elements using 1170094 bytes

>> dragrate_tasks
dragrate_tasks =

task1
task2
...