I'm trying to address the following analysis problem in high-dimensional biological data. The setup is bulk gene expression data where multiple cell types (tumor and immune cells) can contribute to detected gene expression signal in the mixture:
I would like to find the genes (predictor variables) whose expression levels are the most predictive for the changes in the immune signature (response variable). However, my goal is to untangle a few moving parts by accounting for the "levels of immune cells" in the mixture to find predictor genes that are more likely to be related to the tumor cells.
In other words, I would like to adjust the response variable for a covariate (level of immune cells in the mixture -- which is likely to show some confounding effects with the predictor variables I care about). A linear model version of what I'm trying to achieve would be probably something like this:
immune_signature = b0 + b1*immune_cell_level + b2*gene1 + b3*gene2 + ...
I would like the algorithm to apply shrinkage on coefficients b2 ... bN
, but leave b1
alone.
What is the best way of doing this in LASSO/Ridge?
Can we force the algorithm not to shrink the coefficient of a desired covariate (I'm using R)?
Or is it customary to perform two separate analyses 1) One with the response variable I'm interested in, and 2) One with covariate I'd like to adjust for as the response variable, and compare the coefficients between two methods?
Thanks!