nimare.meta.cbma.mkda
.MKDADensity
- class MKDADensity(kernel_transformer=<class 'nimare.meta.kernel.MKDAKernel'>, null_method='approximate', n_iters=10000, n_cores=1, **kwargs)[source]
Bases:
nimare.meta.cbma.base.CBMAEstimator
Multilevel kernel density analysis- Density analysis.
- Parameters
kernel_transformer (
nimare.meta.kernel.KernelTransformer
, optional) – Kernel with which to convolve coordinates from dataset. Default isnimare.meta.kernel.MKDAKernel
.null_method ({“approximate”, “montecarlo”}, optional) – Method by which to determine uncorrected p-values. “approximate” is faster, but slightly less accurate. “montecarlo” can be much slower, and is only slightly more accurate.
n_iters (int, optional) – Number of iterations to use to define the null distribution. This is only used if
null_method=="montecarlo"
. Default is 10000.n_cores (
int
, optional) – Number of cores to use for parallelization. This is only used ifnull_method=="montecarlo"
. If <=0, defaults to using all available cores. Default is 1.**kwargs – Keyword arguments. Arguments for the kernel_transformer can be assigned here, with the prefix ‘kernel__’ in the variable name.
Notes
The MKDA density algorithm is also implemented in MATLAB at https://github.com/canlab/Canlab_MKDA_MetaAnalysis.
Available correction methods:
MKDADensity.correct_fwe_montecarlo()
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_fwe_montecarlo(result, voxel_thresh=0.001, n_iters=10000, n_cores=- 1, vfwe_only=False)[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.voxel_thresh (
float
, optional) – Cluster-defining p-value threshold. Default is 0.001.n_iters (
int
, optional) – Number of iterations to build the vFWE and cFWE null distributions. Default is 10000.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: ‘vthresh’, ‘logp_level-cluster’, and ‘logp_level-voxel’.
See also
nimare.correct.FWECorrector
The Corrector from which to call this method.
Examples
>>> meta = MKDADensity() >>> result = meta.fit(dset) >>> corrector = FWECorrector(method='montecarlo', voxel_thresh=0.01, n_iters=5, n_cores=1) >>> cresult = corrector.transform(result)
- fit(dataset, drop_invalid=True)[source]
Fit Estimator 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 False.
- Returns
nimare.results.MetaResult
– Results of Estimator fitting.- Variables
inputs_ (
dict
) – Inputs used in _fit.
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 callfit
.