nimare.meta.cbma.mkda.MKDAChi2

class MKDAChi2(kernel_transformer=<class 'nimare.meta.kernel.MKDAKernel'>, prior=0.5, **kwargs)[source]

Bases: nimare.meta.cbma.base.PairwiseCBMAEstimator

Multilevel kernel density analysis- Chi-square analysis.

Changed in version 0.0.8:

  • [REF] Use saved MA maps, when available.

Parameters
  • kernel_transformer (nimare.meta.kernel.KernelTransformer, optional) – Kernel with which to convolve coordinates from dataset. Default is nimare.meta.kernel.MKDAKernel.

  • prior (float, optional) – Uniform prior probability of each feature being active in a map in the absence of evidence from the map. Default: 0.5

  • **kwargs – Keyword arguments. Arguments for the kernel_transformer can be assigned here, with the prefix ‘kernel__’ in the variable name.

Notes

The MKDA Chi-square algorithm was originally implemented as part of the Neurosynth Python library (https://github.com/neurosynth/neurosynth).

Available correction methods: MKDAChi2.correct_fwe_montecarlo(), MKDAChi2.correct_fdr_bh

References

  • Wager, Tor D., Martin Lindquist, and Lauren Kaplan. “Meta-analysis of functional neuroimaging data: current and future directions.” Social cognitive and affective neuroscience 2.2 (2007): 150-158. https://doi.org/10.1093/scan/nsm015

compute_summarystat(data)[source]

Compute summary statistics from data.

The actual summary statistic varies across Estimators. For ALE and SCALE, the values are known as ALE values. For (M)KDA, they are “OF” scores.

Parameters

data (array, pandas.DataFrame, or list of img_like) – Data from which to estimate summary statistics. The data can be: (1) a 1d contrast-len or 2d contrast-by-voxel array of MA values, (2) a DataFrame containing coordinates to produce MA values, or (3) a list of imgs containing MA values.

Returns

stat_values (1d array) – Summary statistic values. One value per voxel.

correct_fdr_bh(result, alpha=0.05)[source]

Perform FDR correction using the Benjamini-Hochberg method.

Only call this method from within a Corrector.

Parameters
Returns

images (dict) – Dictionary of 1D arrays corresponding to masked images generated by the correction procedure. The following arrays are generated by this method: ‘consistency_z_FDR’ and ‘specificity_z_FDR’.

See also

nimare.correct.FDRCorrector

The Corrector from which to call this method.

Examples

>>> meta = MKDAChi2()
>>> result = meta.fit(dset)
>>> corrector = FDRCorrector(method='bh', alpha=0.05)
>>> cresult = corrector.transform(result)
correct_fwe_montecarlo(result, n_iters=5000, n_cores=- 1)[source]

Perform FWE correction using the max-value permutation method.

Only call this method from within a Corrector.

Parameters
  • result (nimare.results.MetaResult) – Result object from a KDA meta-analysis.

  • n_iters (int, optional) – Number of iterations to build the vFWE null distribution. Default is 5000.

  • n_cores (int, optional) – Number of cores to use for parallelization. If <=0, defaults to using all available cores. Default is -1.

Returns

images (dict) – Dictionary of 1D arrays corresponding to masked images generated by the correction procedure. The following arrays are generated by this method: ‘p_desc-consistency_level-voxel’, ‘z_desc-consistency_level-voxel’, ‘p_desc-specificity_level-voxel’, and ‘p_desc-specificity_level-voxel’.

See also

nimare.correct.FWECorrector

The Corrector from which to call this method.

Examples

>>> meta = MKDAChi2()
>>> result = meta.fit(dset)
>>> corrector = FWECorrector(method='montecarlo', n_iters=5, n_cores=1)
>>> cresult = corrector.transform(result)
fit(dataset1, dataset2, drop_invalid=True)[source]

Fit Estimator to two Datasets.

Parameters

dataset1/dataset2 (nimare.dataset.Dataset) – Dataset objects to analyze.

Returns

nimare.results.MetaResult – Results of Estimator fitting.

Notes

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

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