Skip to contents

Corpora and lexica

Reach a word-frequency corpus in any registered language, and read it in.

list_corpora()
List the corpora known to the registry
fetch_corpus()
Download a CSV-format registered corpus into the cache
lexsync_cache_dir()
Per-user cache directory for fetched corpora
load_lexicon()
Load a lexicon from a CSV file
load_items()
Load a paradigm item table (prime-target pairs, sentences, ...)
load_pool()
Load a supplied candidate pool of words and give it the matcher's dimensions
merge_norms()
Left-join a norm table (e.g. concreteness, age of acquisition, valence)

Lexical dimensions

Derive the dimensions that stimuli are later matched or controlled on.

add_neighbourhood()
Compute orthographic-neighbourhood dimensions (Coltheart's N and OLD20)
add_bigram_frequency()
Mean bigram probability (type-based, non-positional), a phonotactic-probability proxy
add_pair_overlap()
Orthographic overlap between the two members of each pair
count_syllables()
Orthographic syllable estimate: the number of maximal vowel runs

Pools and matching

Filter a lexicon to a candidate pool, then match conditions across dimensions in parallel.

build_pool()
Build an experimental candidate pool by filtering a lexicon
match_stimuli()
Match stimuli across conditions on several lexical dimensions
resample_stimuli()
Produce several disjoint matched item sets (items as a random factor)

Continuous designs

Span a predictor instead of dichotomising it, holding the control dimensions constant.

select_continuous_stimuli()
Select a set spanning a continuous predictor, holding controls constant
match_report_continuous()
Realised-control report for a continuous design

Pseudoword generation

Deterministic non-words, and the lexical-decision sets built from them.

generate_pseudowords()
A length-matched pseudoword for each base word (byte-order processing)
make_pseudoword()
The most bigram-plausible legal non-word at the smallest edit distance
build_lexdec_stimuli()
Assemble a word-vs-pseudoword lexical-decision set from a candidate pool

Paradigms and trial events

The declarative trial model, and the fields a design must supply to it.

PARADIGMS
The paradigm registry: default event sequences and required fields
resolve_events()
The design's trial event list: its own events, else its paradigm's
resolve_trial_timing()
Realise per-trial event durations onto the stimuli table
required_fields()
Trial fields a design needs present in its items (paradigm + events)

Counterbalancing

Rotate items across lists and assign participants to them.

counterbalance()
Assign stimuli to lists and a randomised, reproducible trial order
balance_lists()
Assign item sets to counterbalancing lists so the lists match on the item dimensions
participant_table()
Build a participant counterbalancing table

Validation and equivalence

Report the realised control, testing for equivalence rather than for a null result.

match_report()
Build the full match-quality report
describe_stimuli()
Per-group descriptive statistics for several dimensions
balance_check()
Check that the levels of given columns occur equally often
variance_ratio()
Variance ratio: a distributional balance check
cohens_d()
Cohen's d (pooled-SD standardised mean difference)
cohens_d_ci()
Cohen's d with a confidence interval, complementing the TOST verdict
tost_equiv()
Two one-sided tests (TOST) of equivalence on a Cohen's d bound

Experiment generation

Render the events into runnable experiments, with EEG triggers on the laboratory targets.

export_experiments()
Export all presentation targets (PsychoPy, OpenSesame, jsPsych)
export_psychopy()
Export a runnable PsychoPy script that interprets the event sequence
export_opensesame()
Export a complete plain-text OpenSesame experiment
export_jspsych()
Export a browser-runnable jsPsych experiment
assign_triggers()
Assign EEG trigger codes to stimuli

Materials datasheet

The provenance, checksums and realised control that travel with a stimulus set.

build_datasheet()
Assemble the materials datasheet for one design
write_datasheet()
Write a datasheet to a JSON record and a Markdown rendering
methods_paragraph()
A ready-to-adapt methods paragraph rendered from a datasheet

Pipeline and logging

Run a design end to end, and log every step and artefact as it is written.

run_pipeline()
Run the lexsync pipeline for one design
run_all()
Run the lexsync pipeline for every design configuration
new_run_log()
Start a new run log
log_step()
Append a step to a run log
log_artefact()
Record a written artefact (path, rows, fingerprint) in the log
write_run_log()
Write the run log to Markdown (and optionally JSON Lines)