File conversion — Python tools UI (web-based)
Browser-based converters — no installation required to use the hosted versions below. Each conversion tool is its own standalone app.
Live apps
| App | URL | File |
|---|---|---|
| Convert .mat → NumPy | mds-app-matnpy.streamlit.app | app_matnpy.py |
| Convert NumPy → .mat | appnumpytomatpy-dcahmfdqvuqdzyyza3ddyy.streamlit.app | app_numpy_to_mat.py |
| OOO → Triadic | ooo-triadic.streamlit.app | app_ooo.py |
Note: apps may be asleep if inactive — click the link and wait a moment for them to wake up. The hosted versions run on limited, shared resources — best for small datasets and a quick look, not a final fit.
Running locally
Faster than the hosted versions, and not limited by their shared resources:
cd rs-software
pip install streamlit plotly pandas matplotlib scikit-learn
streamlit run app_matnpy.py # or app_numpy_to_mat.py, app_ooo.py
Convert .mat → NumPy
Convert a .mat file to a NumPy array. Works with either a choices file (raw pairwise
judgments) or a coordinates file (the output of a model fit) — the tool detects which one
you uploaded automatically, so you don't need to tell it which kind of file it is.
Choices file → output columns: ref, s1, s2, N(s1 chosen), N_repeats (1-indexed)
Coordinates file → output: an (n_stimuli, dim) array of the fitted coordinates. If the file
has more than one fitted dimensionality (e.g. both a 2D and a 3D fit saved together), you'll be
asked which one to export.
- Upload a
.matfile (choices or coordinates) - Preview the array in the browser
- Download as
.npy
Convert NumPy → .mat
Convert a 5-column NumPy choice array back into a .mat choice file — the reverse of the
tool above.
Input columns: ref, s1, s2, N(s1 chosen), N_repeats (1-indexed)
- Upload a
.npychoice array - Optionally provide stimulus names (typed, uploaded as a text file, or skipped — falls
back to generic names like
stim_01) - Preview the array in the browser
- Download as
.mat
OOO → Triadic
Convert an odd-one-out .mat file to standard triadic choice format.
Each OOO judgment generates exactly 2 triadic entries: if X is chosen as odd one out from
(X, Y, Z), this yields ref=Y, chosen=Z and ref=Z, chosen=Y.
Input format: s1, s2, s3, N(s1 odd out), N(s2 odd out), N(s3 odd out)
Output format: ref, s1, s2, N(s1 chosen), N_repeats
- Upload an OOO
.matfile - Preview the converted triadic table
- Download as
.mat
The output file can be used directly in the Comparing RS or Choice → Coordinates tools.
Choice → Coordinates has moved
Fitting coordinates from a choice file is now documented under Creating RS → Choice → Coordinates, alongside the other ways to create a representational space from perceptual judgments.