Skip to content

linear mixed model using lmer

7 messages · array chip, Jeff Newmiller, Bert Gunter +3 more

#
Dear all, I have this simple dataset to measure the yeild of a crop collected in 2 batches (attached). when I ran a simple inear mixed model using lmer to estimate within-batch and between-batch variability, the between-batch variability is 0. The run showed that data is singular. Does anyone know why the data is singular and what's the reason for 0 variability? is it because the dataset only has 2 batches?
boundary (singular) fit: see ?isSingular
Linear mixed model fit by REML ['lmerMod']
Formula: yield ~ 1 + (1 | batch)
? ?Data: daty
REML criterion at convergence: 115.6358
Random effects:
?Groups? ?Name? ? ? ? Std.Dev.
?batch? ? (Intercept) 0.000? ?
?Residual? ? ? ? ? ? ?2.789? ?
Number of obs: 24, groups:? batch, 2
Fixed Effects:
(Intercept)??
? ? ? 5.788??

Thanks!
John
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: datx.txt
URL: <https://stat.ethz.ch/pipermail/r-help/attachments/20220305/296d04e5/attachment.txt>
#
a) There is a mailing list for that: https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models

b) Read the Posting Guide, as most attachment types are removed to avoid propagating worms/viruses. (None seen upon receipt of this email.)
On March 4, 2022 4:41:57 PM PST, array chip via R-help <r-help at r-project.org> wrote:
#
Thanks Jeff for reminding me that the attachment is removed. I put it in my google drive if anyone wants to test the data (https://drive.google.com/file/d/1lgVZVLHeecp9a_sFxEPeg6353O-qXZhM/view?usp=sharing)
I'll try the mixed model mailing list as well.
John
On Friday, March 4, 2022, 04:56:20 PM PST, Jeff Newmiller <jdnewmil at dcn.davis.ca.us> wrote:
a) There is a mailing list for that: https://stat.ethz.ch/mailman/listinfo/r-sig-mixed-models

b) Read the Posting Guide, as most attachment types are removed to avoid propagating worms/viruses. (None seen upon receipt of this email.)
On March 4, 2022 4:41:57 PM PST, array chip via R-help <r-help at r-project.org> wrote:
#
Do you really think a variance from a sample size of 2 makes any sense?

Bert Gunter

"The trouble with having an open mind is that people keep coming along
and sticking things into it."
-- Opus (aka Berkeley Breathed in his "Bloom County" comic strip )

On Fri, Mar 4, 2022 at 5:06 PM array chip via R-help
<r-help at r-project.org> wrote:
4 days later
#
I think the best analysis of this data is:

library(lattice)
dotplot(yield ~ batch, daty)
bwplot(yield ~ batch, daty)

There is no detectable difference between batches.

But, if you insist, try removing the overall intercept.

m1 <- lmer(yield~0+(1|batch),daty)
coef(m1)
summary(m1)
VarCorr(m1)



On Fri, Mar 4, 2022 at 6:44 PM array chip via R-help
<r-help at r-project.org> wrote:

  
    
5 days later
#
There is no difference when running anova or t-test. So you shouldn't
expect positive variance between batches.

On Fri, Mar 4, 2022 at 7:06 PM array chip via R-help <r-help at r-project.org>
wrote:

  
  
#
Well, it is true that when there are only two levels, t-test and F-tests should give identical inferences, I don?t think that?s the problem in this case.
Instead, remember that we can compute variance components from an anova table, if we write out the expected mean squares and solve algebraically. When I run aov on these data, I get
Df Sum Sq Mean Sq F value Pr(>F)
batch        1   1.03   1.035   0.128  0.724
Residuals   22 177.91   8.087    

This would imply a negative variance component estimate for batch, since batch MS is smaller than residual MS. Most mixed model packages constrain variance estimates to be non-negative, so you get 0 from lmer.

It doesn?t help that you only have two levels for batch.  I find negative variance estimates happen more frequently when there are few levels of the effect to be estimated.

Cheers,
Peter C