nimare.decode.discrete.NeurosynthDecoder

class NeurosynthDecoder(feature_group=None, features=None, frequency_threshold=0.001, prior=0.5, u=0.05, correction='fdr_bh')[source]

Bases: nimare.base.Decoder

Perform discrete functional decoding according to Neurosynth’s meta-analytic method.

New in version 0.0.3.

This does not employ correlations between unthresholded maps, which are the method of choice for decoding within Neurosynth and Neurovault. Metadata (i.e., feature labels) for studies within the selected sample (ids) are compared to the unselected studies remaining in the database (dataset).

Parameters
  • feature_group (str, optional) – Feature group name used to select labels from a specific source. Feature groups are stored as prefixes to feature name columns in Dataset.annotations, with the format [source]_[valuetype]__. Input may or may not include the trailing underscore. Default is None, which uses all feature groups available.

  • features (list, optional) – List of features in dataset annotations to use for decoding. If feature_group is provided, then features should not include the feature group prefix. If feature_group is not provided, then features should include the prefix. Default is None, which uses all features available.

  • frequency_threshold (float, optional) – Threshold to apply to dataset annotations. Values greater than or equal to the threshold as assigned as label+, while values below the threshold are considered label-. Default is 0.001.

  • prior (float, optional) – Uniform prior probability of each label being active in a study in the absence of evidence (labels or selection) from the study. Default is 0.5 (50%).

  • u (float, optional) – Alpha level for multiple comparisons correction. Default is 0.05.

  • correction (str or None, optional) – Multiple comparisons correction method to apply. Corresponds to available options for statsmodels.stats.multitest.multipletests(). Default is ‘fdr_bh’ (Benjamini-Hochberg FDR correction).

See also

nimare.decode.discrete.neurosynth_decode()

The associated function for this method.

References

fit(dataset, drop_invalid=True)[source]

Fit Decoder to Dataset.

Parameters
  • dataset (nimare.dataset.Dataset) – Dataset object to analyze.

  • drop_invalid (bool, optional) – Whether to automatically ignore any studies without the required data or not. Default is True.

Returns

nimare.results.MetaResult – Results of Decoder fitting.

Notes

The fit method is a light wrapper that runs input validation and preprocessing before fitting the actual model. Decoders’ individual “fitting” methods are implemented as _fit, although users should call fit.

Selection of features based on requested features and feature group is performed in Decoder._preprocess_input.

get_params(deep=True)[source]

Get parameters for this estimator.

Parameters

deep (bool, optional) – If True, will return the parameters for this estimator and contained subobjects that are estimators.

Returns

params (dict) – Parameter names mapped to their values.

classmethod load(filename, compressed=True)[source]

Load a pickled class instance from file.

Parameters
  • filename (str) – Name of file containing object.

  • compressed (bool, optional) – If True, the file is assumed to be compressed and gzip will be used to load it. Otherwise, it will assume that the file is not compressed. Default = True.

Returns

obj (class object) – Loaded class object.

save(filename, compress=True)[source]

Pickle the class instance to the provided file.

Parameters
  • filename (str) – File to which object will be saved.

  • compress (bool, optional) – If True, the file will be compressed with gzip. Otherwise, the uncompressed version will be saved. Default = True.

set_params(**params)[source]

Set the parameters of this estimator.

The method works on simple estimators as well as on nested objects (such as pipelines). The latter have parameters of the form <component>__<parameter> so that it’s possible to update each component of a nested object.

Returns

self

transform(ids, ids2=None)[source]

Apply the decoding method to a Dataset.

Parameters
  • ids (list) – Subset of studies in coordinates/annotations dataframes indicating target for decoding. Examples include studies reporting at least one peak in an ROI, or studies selected from a clustering analysis.

  • ids2 (list or None, optional) – Second subset of studies, representing “unselected” studies. If None, then all studies in Dataset not in ids will be used.

Returns

results (pandas.DataFrame) – Table with each label and the following values associated with each label: ‘pForward’, ‘zForward’, ‘probForward’, ‘pReverse’, ‘zReverse’, and ‘probReverse’.

Examples using nimare.decode.discrete.NeurosynthDecoder