title: Error when trying to run lmer() in R
body: <p>So here's my problem. I have a data set in R that I need to run a mixed effects model on. Here's the code:</p>
  
  <pre><code>data &lt;- read.csv("D:/blahblah.csv")
  analysis.data &lt;- lmer(intdiff ~ stress_limit * word_position * follows + (1|speaker), data)
  summary(analysis.data)
  </code></pre>
  
  <p>When I try to run the script, it returns the following error:</p>
  
  <pre><code> Error in mer_finalize(ans) : Downdated X'X is not positive definite, 15.
  </code></pre>
  
  <p>I have tracked the error down to the "follows" parameter because when I just use stress_limit and word_position, it runs fine. If it helps, the data in "follows" are only 3 strings: n or l, consonant, vowel. I've tried replacing the spaces with _ but with no success. Is there something about the internal workings of the lmer() function that is preventing the use of "follows" in this case? Any help would be great!</p>
  
  <p>For more info: intdiff contains numeric values, stress_limit is strings (Stressed or Unstressed) and word position is also strings (Word Medial or Word Initial). </p>
  
  <p>EDIT: Here is a data sample that reproduces the error:</p>
  
  <pre><code>structure(list(intdiff = c(11.45007951, 12.40144758, 13.47898367, 
  6.279497762, 18.19461897, 16.15539707), word_position = structure(c(2L, 
  2L, 2L, 1L, 1L, 1L), .Label = c("Word Initial", "Word Medial"
  ), class = "factor"), follows = structure(c(4L, 4L, 4L, 1L, 2L, 
  4L), .Label = c("Consonant", "n or l", "Pause", "Vowel"), class = "factor"), 
  stress_limit = structure(c(2L, 1L, 1L, 2L, 2L, 2L), .Label = c("Stressed", 
  "Unstressed"), class = "factor"), speaker = structure(c(2L, 
  2L, 2L, 2L, 2L, 2L), .Label = c("f11r", "f13r", "f15a", "f16a", 
  "m09a", "m10a", "m12r", "m14r"), class = "factor")), .Names = c("intdiff", 
  "word_position", "follows", "stress_limit", "speaker"), row.names = c(NA, 
  6L), class = "data.frame")
  </code></pre>
  
  <p>I tried the lme() function as well, but it returned this error:</p>
  
  <pre><code>Error in MEEM(object, conLin, control$niterEM) : 
  Singularity in backsolve at level 0, block 1
  </code></pre>
  
  <p>The code in my original post is the exact code I'm using, minus the library(lme4) call, so I'm not leaving any information out I can think of.</p>
  
  <p>My R version is 2.15.2</p>