lmVoxel: Run a Linear Model on all voxels of a NIfTI image within a...

Description Usage Arguments Value Examples

View source: R/lmVoxel.R

Description

This function is able to run a Linear Model using the stats package. The analysis will run in all voxels in in the mask and will return the model fit for each voxel.

Usage

1
2
lmVoxel(image, mask, fourdOut = NULL, formula, subjData,
  mc.preschedule = TRUE, ncores = 1, ...)

Arguments

image

Input image of type 'nifti' or vector of path(s) to images. If multiple paths, the script will all 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 lm()

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

...

Additional arguments passed to lm()

Value

Returns list of models fitted to each voxel over the masked images passed to function.

Examples

1
2
3
4
5
6
7
image <- oro.nifti::nifti(img = array(1:1600, dim =c(4,4,4,25)))
mask <- oro.nifti::nifti(img = array(0:1, dim = c(4,4,4,1)))
set.seed(1)
covs <- data.frame(x = runif(25))
fm1 <- "~ x"
models <- lmVoxel(image=image, mask=mask, 
              formula=fm1, subjData=covs, ncores = 1)

neuroconductor/voxel documentation built on May 20, 2021, 9:39 p.m.