-
Notifications
You must be signed in to change notification settings - Fork 57
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
MAST unable to estimate components when including mixed effect #98
Comments
This does seem odd. |
Hi again! Sorry for the delay - I've put together a minimal SingleCellAssay object with 3 genes - 2 of those are other random housekeeping genes which are expressed across the board, and then the 3rd is the transgene I mentioned above. Condition 1 corresponds to the one where the transgene is robustly expressed, it's absent in the other cases. I'm attaching the SingleCellAssay object (rds format). You should be able to re-obtain the result above by running the following code (load the rds object as mast.raw): ` sum.lrt <- MAST::summary(mast.zlmFit, doLRT = T) mast.zlmFit2 <- zlm( sum.lrt2 <- MAST::summary(mast.zlmFit2, doLRT = T) I suspect that part of the problem is due to the fact that we're trying to fit a complex model with relatively low cell numbers - if that is the case, it'd be great if you had recommendations on alternative ways to run MAST on this data or even other tools that could be used. Let me know if anything is unclear, and thanks for the help! |
Could you post your
Just looking into what changes have occurred in SummarizedExperiment. I am using NEWS file indicates:
I wonder if there is some backward-incompatibility. |
Note: I've managed to rescue the file. |
Here's the output:
Matrix products: default locale: attached base packages: other attached packages: loaded via a namespace (and not attached): |
The attached file can be read in by MAST under R > 3.5.0 and associated Bioconductor packages. I can fit the discrete part by hand when passing |
Sorry, I am late to the party and haven't read this thread through in detail yet. We do have this ability. We can pass arguments to the discrete and continuous "fit" methods with fitArgsC or fitArgsD = list(...). See Line 223 in 521ef98
`?"LMlike-class"' |
Gives the following:
The continuous part has a The following is a little more reasonable:
and you can add |
Thanks for looking into this! I'll go ahead and try some of your suggestions. |
Hi there!
I've just recently encountered this issue and was hoping to see whether you guys could help with understanding what's going on: I want to identify differentially expressed genes between 2 conditions. We have 4 replicates (samples from different animals) per condition, which were processed in 2 batches (2 from each condition/batch).
The formula I used to fit the model is: ~ Condition + Batch + nGenes + (1|animal) . One of the known differences between the 2 conditions is that a transgene is only expressed in one of them (and the signal is very robust). From previous posts, I understand that the continuous component of the model can't be computed in that scenario, which is what I see if I fit the model with the formula as above, just without the mixed effect. However, when fitting with the mixed effect, the discrete component is no longer estimated, and a coefficient appears for the continuous component (although not significant). I'm trying to understand why this is happening, since this transgene is essentially a positive control for differential expression, and isn't showing up. Do you have any insights on what's causing this (/how to resolve it)?
Here are the relevant rows from the summary object ("sum.lrt <- MAST::summary(mast.zlmFit, doLRT = T)") using the 2 formulas:
~ Condition + Batch + nGenes:
~ Condition + Batch + nGenes + (1|animal):
Thanks!
Gabriela
The text was updated successfully, but these errors were encountered: