nimare.decode.discrete.neurosynth_decode

neurosynth_decode(coordinates, annotations, ids, ids2=None, feature_group=None, features=None, frequency_threshold=0.001, prior=0.5, u=0.05, correction='fdr_bh')[source]

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

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).

Neurosynth was described in Yarkoni et al.[1].

Parameters:
  • coordinates (pandas.DataFrame) – DataFrame containing coordinates. Must include a column named ‘id’ and must have a separate row for each reported peak coordinate for each study (i.e., there are multiple rows per ID). IDs from coordinates must match those from annotations.

  • annotations (pandas.DataFrame) – DataFrame containing labels. Must include a column named ‘id’ and each row must correspond to a study. Other columns may correspond to individual labels. IDs from annotations must match those from coordinates.

  • 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 coordinates/annotations dataframes not in ids will be used.

  • features (list, optional) – List of features in dataset annotations to use for decoding. 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 ({None, "bh", "by", "bonferroni"}, optional) – Multiple comparisons correction method to apply. Default is ‘bh’ (Benjamini-Hochberg FDR correction).

Returns:

out_df – Table with each label and the following values associated with each label: ‘pForward’, ‘zForward’, ‘probForward’, ‘pReverse’, ‘zReverse’, and ‘probReverse’.

Return type:

pandas.DataFrame

See also

NeurosynthDecoder

The associated class for this method.

CorrelationDecoder()

The correlation-based decoding method employed in Neurosynth and NeuroVault.

References