Free recall analysis#

The fr module provides access to a set of high-level functions for working with free-recall datasets.

Managing data#

table_from_lists(subjects, study, recall[, ...])

Create table format data from list format data.


Run checks on free recall data.

merge_free_recall(data, **kwargs)

Score free recall data by matching up study and recall events.

merge_lists(study, recall[, merge_keys, ...])

Merge study and recall events together for each list.

filter_data(data[, subjects, lists, ...])

Filter data to get a subset of trials.


Reset list index in a DataFrame.

split_lists(frame, phase[, keys, names, ...])

Convert free recall data from one phase to split format.

pool_index(trial_items, pool_items_list)

Get the index of each item in the full pool.


Get index of each block in a list.

Recall probability#


Serial position curve.

pnr(df[, item_query, test_key, test])

Probability of recall by serial position and output position.


pli_list_lag(df, max_lag)

List lag of prior-list intrusions.

Transition probability#

lag_crp(df[, lag_key, count_unique, ...])

Lag-CRP for multiple subjects.

lag_crp_compound(df[, lag_key, ...])

Conditional response probability by lag of current and prior transitions.

category_crp(df, category_key[, item_query, ...])

Conditional response probability of within-category transitions.

distance_crp(df, index_key, distances, edges)

Conditional response probability by distance bin.

Transition rank#

lag_rank(df[, lag_key, item_query, ...])

Calculate rank of the absolute lags in free recall lists.

distance_rank(df, index_key, distances[, ...])

Calculate rank of transition distances in free recall lists.

distance_rank_shifted(df, index_key, ...[, ...])

Rank of transition distances relative to earlier items.


category_clustering(df, category_key)

Category clustering of recall sequences.


plot_raster(df[, hue, palette, marker, ...])

Plot recalls in a raster plot.

plot_spc(recall, **facet_kws)

Plot a serial position curve.

plot_lag_crp(recall[, max_lag, lag_key, split])

Plot conditional response probability by lag.

plot_distance_crp(crp[, min_samples])

Plot response probability by distance bin.

plot_swarm_error(data[, x, y, swarm_color, ...])

Plot points as a swarm plus mean with error bars.