Perform RSA in a searchlight pattern on epochs.
The output is an Evoked object where the “signal” at each sensor is the RSA, computed using all surrounding sensors.
The brain activity during the epochs. The event codes are used to distinguish between items.
The model DSM, see compute_dsm()
. For efficiency, you can give it
in condensed form, meaning only the upper triangle of the matrix as a
vector. See scipy.spatial.distance.squareform()
. To perform RSA
against multiple models at the same time, supply a list of model DSMs.
Use compute_dsm()
to compute DSMs.
When specified, the data will by normalized using the noise covariance. This is recommended in all cases, but a hard requirement when the data contains sensors of different types. Defaults to None.
The spatial radius of the searchlight patch in meters. All sensors within this radius will belong to the searchlight patch. Set to None to only perform the searchlight over time, flattening across sensors. Defaults to 0.04.
The temporal radius of the searchlight patch in seconds. Set to None to only perform the searchlight over sensors, flattening across time. Defaults to 0.1.
The metric to use to compute the DSM for the epochs. This can be any
metric supported by the scipy.distance.pdist function. See also the
epochs_dsm_params
parameter to specify and additional parameter for
the distance function. Defaults to ‘correlation’.
Extra arguments for the distance metric used to compute the DSMs.
Refer to scipy.spatial.distance
for a list of all other metrics
and their arguments. Defaults to an empty dictionary.
The RSA metric to use to compare the DSMs. Valid options are:
‘spearman’ for Spearman’s correlation (the default)
‘pearson’ for Pearson’s correlation
‘kendall-tau-a’ for Kendall’s Tau (alpha variant)
‘partial’ for partial Pearson correlations
‘partial-spearman’ for partial Spearman correlations
‘regression’ for linear regression weights
Defaults to ‘spearman’.
Whether to treat NaN’s as missing values and ignore them when computing
the distance metric. Defaults to False
.
New in version 0.8.
For each Epoch, a number indicating the item to which it belongs.
When None
, the event codes are used to differentiate between items.
Defaults to None
.
Number of cross-validation folds to use when computing the distance
metric. Folds are created based on the y
parameter. Specify
None
to use the maximum number of folds possible, given the data.
Alternatively, you can pass a Scikit-Learn cross validator object (e.g.
sklearn.model_selection.KFold
) to assert fine-grained control over
how folds are created.
Defaults to 1 (no cross-validation).
Channels to include. Slices and lists of integers will be interpreted
as channel indices. In lists, channel type strings (e.g., ['meg',
'eeg']
) will pick channels of those types, channel name strings
(e.g., ['MEG0111', 'MEG2623']
will pick the given channels. Can
also be the string values “all” to pick all channels, or “data” to pick
data channels. None
(default) will pick all MEG and EEG channels,
excluding those maked as “bad”.
When set, searchlight patches will only be generated from subsequent
time points starting from this time point. This value is given in
seconds. Defaults to None
, in which case patches are generated
starting from the first time point.
When set, searchlight patches will only be generated up to and
including this time point. This value is given in seconds. Defaults to
None
, in which case patches are generated up to and including the
last time point.
When this is set to True
, the drop log will be used to inject NaN
values in the DSMs at the locations where a bad epoch was dropped. This
is useful to ensure the dimensions of the DSM are the same,
irregardless of any bad epochs that were dropped. Make sure to use
ignore_nan=True
when using DSMs with NaNs in them during subsequent
RSA computations. Defaults to False
.
New in version 0.8.
The number of processes (=number of CPU cores) to use. Specify -1 to use all available cores. Defaults to 1.
Whether to display a progress bar. In order for this to work, you need the tqdm python module installed. Defaults to False.
The correlation values for each searchlight patch. When spatial_radius is set to None, there will only be one virtual sensor. When temporal_radius is set to None, there will only be one time point. When multiple models have been supplied, a list will be returned containing the RSA results for each model.
See also