I have a dataset where different features were measured for three conditions. Each feature consists of sub-features, and sub-features are nested within features. I'm interested in the contrasts cond1 vs ctrl and cond2 vs ctrl on the feature level. Here is a part of the dataset (the full data contains ~10k features) and here's an overview of the design:
Each sub-feature has it's own intercept and so I fit a model readout ~ (1|subfeature) + (condition|feature)
. This gives a boundary (singular) fit warning, likely because a corresponding fixed-effects model readout ~ subfeature + condition:feature
has a non full-rank design.
How can I simplify the mixed-effects model to have a full-rank design? In the fixed-effects only case, I would replace the design matrix columns corresponding to the interaction effects by columns corresponding to the contrasts conditioncond{1|2}_vs_conditionctrl:featuref{1|2}.