This function performs linear modeling using the Limma package, incorporating covariates in the model fitting process. It is designed to handle both two-group comparisons and multi-group settings with covariates.
Arguments
- x
A list containing two or more data matrices where rows represent features (e.g., genes, proteins) and columns represent samples. The list should contain at least two matrices for pairwise group comparison.
- group.name
A character string indicating the name of the group variable in
meta.info
to be used in the analysis.- meta.info
A data frame containing the metadata for the samples. This includes sample grouping and any covariates to be included in the model.
- formula.str
A string specifying the formula to be used in model fitting. It should follow the standard R formula syntax (e.g.,
~ covariate1 + covariate2
).- trend
A logical value indicating whether to allow for an intensity-dependent trend in the prior variance.
- robust
A logical value indicating whether to use a robust fitting procedure to protect against outliers.
Value
A list containing the following elements:
- d
A vector of the test statistics (log-fold changes or F-statistics) for each feature.
- s
A vector of the standard deviations for each feature, adjusted by t he empirical Bayes procedure.
- corrected.logfc
The log-fold changes for each feature after fitting the model.
Details
This function combines the data matrices from different groups and fits a
linear model using covariates provided in the meta.info
. For two-group
comparisons, the function computes contrasts between the two groups and
applies empirical Bayes moderation. For multi-group analysis with a single
covariate, pairwise contrasts are computed, and the moderated F-statistic is
calculated for each feature.