bsmschema.models.Model#
- object Model#
The model to fit to the collection of input images.
This section defines the design matrix construction, estimator type, and additional options needed to estimate the model parameters.
- Config:
extra: str = forbid
- field Type: Literal['glm', 'meta'] [Required]#
The type of analysis to run. The following values are currently defined: *
"glm"
for general linear model, *"meta"
for meta-analysis.
- field X: List[Literal[1] | str] [Required]#
A list of predictors to include in the model. At present, the BIDS-Model specification only handles traditional GLM analyses, so the assumption is always that brain activation is being predicted from one or more predictors. All variables listed in the X field will be included as columns in the design matrix. Each variable name specified in X must exactly match one of the variables available in the namespace. Any available variables that are not explicitly named in X will be omitted from the model. Partial matching is supported and can be specified using wildcard characters; for example, use “aroma_motion_*” to specify all of the aroma components found in the confounds file. Following standard Unix-style glob rules, “*” is interpreted to match 0 or more alphanumeric characters, and “?” is interpreted to match exactly one alphanumeric character.
- field Formula: str | None#
Wilkinson notation specification of a transformation of the design matrix X. A 1 or 0 term MUST be present to explicitly include or exclude, respectively, an intercept variable, to ensure consistent handling across formula interpreters.
- field HRF: HRF | None#
A specification of the hemodynamic response function (HRF) that should be applied to variables by implementing software.
- field Software: Dict[str, Dict[str, Any]] | None#
This section allows one to specify any software-specific estimation parameters. Each key in the object is the name of the software package (FSL, SPM, etc.), and the value is an object containing software-specific parameters. The BIDS Stats Models spec makes no attempt to control the vocabulary available for use in any particular software package; we expect that the developers of each package will, over time, fill in these specifications.