Learn R Programming

voxel (version 1.3.5)

lmerNIfTI: Run a Linear Mixed Effects Model on a NIfTI image and output a parametric maps

Description

This function is able to run a Linear Mixed Effect Model using the lmer() function. The function relies on lmerTest to create p-values using the Satterthwaite Approximation. The analysis will run in all voxels in in the mask and will return parametric coefficients. The function will create parametric maps according to the model selected. The function will return a p-map, t-map, z-map, p-adjusted-map for parametric terms and p-map, z-map, p-adjusted-map for smooth terms. You can select which type of p-value correction you want done on the map.

Usage

lmerNIfTI(image, mask, fourdOut = NULL, formula, subjData,
  mc.preschedule = TRUE, ncores = 1, method = "none", residual = FALSE,
  outDir = NULL, ...)

Arguments

image

Input image of type 'nifti' or vector of path(s) to images. If multiple paths, the script will call mergeNifti() and merge across time.

mask

Input mask of type 'nifti' or path to mask. Must be a binary mask

fourdOut

To be passed to mergeNifti, This is the path and file name without the suffix to save the fourd file. Default (NULL) means script won't write out 4D image.

formula

Must be a formula passed to lmer()

subjData

Dataframe containing all the covariates used for the analysis

mc.preschedule

Argument to be passed to mclapply, whether or not to preschedule the jobs. More info in parallel::mclapply

ncores

Number of cores to use

method

which method of correction for multiple comparisons (default is none)

residual

If set to TRUE then residuals maps will be returned along parametric maps

outDir

Path to the folder where to output parametric maps (Default is Null, only change if you want to write maps out)

...

Additional arguments passed to lmer()

Value

Returns parametric maps of the fitted models

Examples

Run this code
# NOT RUN {

image <- oro.nifti::nifti(img = array(1:1600, dim =c(4,4,4,25)))
mask <- oro.nifti::nifti(img = array(c(rep(0,14),1,1), dim = c(4,4,4,1)))
set.seed(1)
covs <- data.frame(x = runif(25), id = rep(1:5,5))
fm1 <- "~ x + (1|id)"
Maps <- lmerNIfTI(image, mask, formula = fm1, subjData = covs, method="fdr", ncores = 1)

# }

Run the code above in your browser using DataLab