Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expand LME model to allow additional mixed effects #184

Open
jwdebelius opened this issue Jan 27, 2024 · 1 comment
Open

Expand LME model to allow additional mixed effects #184

jwdebelius opened this issue Jan 27, 2024 · 1 comment

Comments

@jwdebelius
Copy link

Current Behavior
The current QIIME 2 implementation allows modeling of an interaction term with a group:
$z = mx*y + b | c$
where $x$ is a continuous gradient component, $y$ is a categorical exposure variable, and $c$ is a group variable.

Proposed Behavior
I would like to see 3 expansions to the function.

  1. The ability to add confounders or other adjustment to the model. For example, in a model following children, it might be useful to be able to adjust alpha diversity for birth mode, even if we're not interested in it either as a time-varying factor.
  2. The ability to opt-out of the interaction model. I do a lot of work where I'm working with something that has a grouping factor (mice in cages, combined studies, etc) where it would be advantageous to have a model that doesn't assume there's a linear gradient involved. If I want to know about the difference between treated and untreated mice in different cages at one time point, there's no linear gradient that interacts with the cage effect.
  3. The ability to add random slopes. I think this gets more complex, and is likely a seperate step, but it would be nice to be able to add additional random factors (per-individual slopes; cage and room for mice; etc). I recognize this may be a use case beyond QIIME 2's general work, but there's also multiple publications showing an individual's response to perturbation is a personalized thing.

Questions

  1. Should non-interaction or non-gradient models be presented as a seperate function (anova-group or something) or should the current functionality be updated? I can see the advantage of having a seperate, more flexibile function but have some concerns it would be mis-understood or misused.
  2. If adjustment is added to the current functionality, can it be added as a flag (confounders or something)?
  3. Is the random slopes something to wait on or is it too much?
  4. What kind of documentation or tutorials are needed to make this transition work?

Comments

I'm happy to help with documentation, coding, or review. But also not the generalized sarcasm when I describe myself as having copious free time.

@lizgehret
Copy link
Member

Hey @jwdebelius! Let's talk about this in our ANCOM-BC2 meeting next week (as time allows). This may be something that @ebolyen would like to add into q2-stats (for any of this functionality that can't be addressed within ANCOM-BC2).

@github-project-automation github-project-automation bot moved this to Backlog in 2024.10 🎃 May 30, 2024
@lizgehret lizgehret moved this from Backlog to In Analysis in 2024.10 🎃 May 30, 2024
@lizgehret lizgehret moved this from In Analysis to Backlog in 2024.10 🎃 Jun 13, 2024
@cherman2 cherman2 removed this from 2024.10 🎃 Oct 24, 2024
@github-project-automation github-project-automation bot moved this to Backlog in 2025.4 🌻 Oct 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Backlog
Development

No branches or pull requests

2 participants