r - Error in nlme repeated measures -


i'm trying run linear mixed model repeated measures @ 57 different timepoints. keep getting error message:

error in solve.default(estimates[dime[1l] - (p:1), dime[2l] - (p:1), drop = false]) :  

system computationally singular: reciprocal condition number = 7.7782e-18

what mean?

my code such:

model.dataset = data.frame(timepointm=timepoint,subjectm=sample,genem=gene) library("nlme")    model = lme(score ~ timepointm + genem,data=model.dataset,random = ~1|subjectm)     

here's data:

score = c(2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,6,7,2,-3,11,14,1,7,6,7,2,-3,11,14,1,7,6,2,-3,11,14,1,7,7,2,-3,11,14,1,7,6,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,6,2,-3,11,14,1,7,7,2,-3,11,14,1,7,6,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,6,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,6,7,2,-3,11,14,1,7,6,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7,2,-3,11,14,1,7) timepoint = c(1,1,1,1,1,1,2,2,2,2,2,2,3,3,3,3,3,3,3,4,4,4,4,4,4,5,5,5,5,5,5,6,6,6,6,6,6,7,7,7,7,7,7,8,8,8,8,8,8,8,9,9,9,9,9,9,10,10,10,10,10,10,10,12,12,12,12,12,12,12,12,13,13,13,13,13,13,13,13,14,14,14,14,14,14,14,14,15,15,15,15,15,15,16,16,16,16,16,16,16,16,17,17,17,17,17,17,18,18,18,18,18,18,19,19,19,19,19,19,19,20,20,20,20,20,20,21,21,21,21,21,21,24,24,24,24,24,24,24,25,25,25,25,25,25,25,27,27,27,27,27,27,28,28,28,28,28,28,29,29,29,29,29,29,30,30,30,30,30,30,30,31,31,31,31,31,31,31,32,32,32,32,32,32,33,33,33,33,33,33,33,33,34,34,34,34,34,34,34,35,35,35,35,35,35,36,36,36,36,36,36,36,37,37,37,37,37,37,38,38,38,38,38,38,39,39,39,39,39,39,39,40,40,40,40,40,40,40,41,41,41,41,41,41,41,41,42,42,42,42,42,42,42,42,43,43,43,43,43,43,44,44,44,44,44,44,44,45,45,45,45,45,45,46,46,46,46,46,46,47,47,47,47,47,47,48,48,48,48,48,48,49,49,49,49,49,49,49,50,50,50,50,50,50,51,51,51,51,51,51,52,52,52,52,52,52,52,53,53,53,53,53,53,53,54,54,54,54,54,54,55,55,55,55,55,55,56,56,56,56,56,56,57,57,57,57,57,57) sample = c("s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s13t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s01t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0","s02t0","s03t0","s07t0","s09t0","s10t0","s12t0") gene =c(24.1215870,-18.8771658,-27.3747309,-41.5740199,26.1561877,-2.7836332,20.8322796,36.5745088,-24.1541743,-11.2362216,4.9042852,7.4230219,155.8663563,16.4465366,-11.7982286,-1.6102783,-35.9559091,27.7909495,-13.9181661,-29.6037658,-68.4297261,-45.0877920,-48.3157529,17.1649982,-26.9084544,19.7358439,-5.8991143,-24.1541743,-23.5960654,13.0780939,-2.7836332,18.6394081,-28.3157487,-49.9186269,-33.7086648,41.6864242,-30.6199654,36.1823804,-36.5745088,-49.9186269,-44.9448864,-4.9042852,-34.3314764,62.3465425,-42.7609951,-11.7982286,-32.2055657,-56.1811080,5.7216661,-17.6296771,4.3857431,-43.6534459,9.6616697,-44.9448864,18.7997599,-12.9902884,109.1064494,7.6750504,-43.6534459,-17.7130611,-25.8433097,5.7216661,-18.5575548,35.2750175,36.1823804,2.3596457,-25.7644526,-55.0574858,15.5302365,-19.4854325,73.3687689,63.1668918,20.8322796,16.5175201,-22.5438960,-28.0905540,15.5302365,7.4230219,39.5062602,107.4657509,36.1823804,-23.5964573,-45.0877920,-43.8212642,4.0869043,-40.8266205,26.3375068,13.1572292,-25.9561030,-40.2569571,-52.8102415,2.4521426,-49.1775202,246.1047731,36.1823804,11.7982286,-35.4261223,-26.9669318,-2.4521426,-38.0429873,38.5656349,9.8679219,16.5175201,8.0513914,-42.6976421,26.9735686,-26.9084544,4.3857431,12.9780515,-32.2055657,-33.7086648,9.8085704,-36.2800196,215.7518511,6.5786146,-9.4385829,-19.3233394,-40.4503978,17.1649982,-7.4230219,14.2536650,-23.5964573,-53.1391834,-52.8102415,22.0692834,-54.7447866,24.1215870,-44.8332688,-24.1541743,-42.6976421,26.9735686,-40.8266205,191.1413737,17.5429723,-70.7893718,-37.0364006,-39.3267756,-4.9042852,-0.9278777,93.5198138,-6.5786146,-24.7762801,-28.9850091,-39.3267756,22.0692834,-50.1053979,14.2536650,23.5964573,-20.9336177,-53.9338637,14.7128556,-39.8987428,4.3857431,-64.8902575,-59.5802966,-33.7086648,22.0692834,2.7836332,46.0503024,-35.3946859,-43.4775137,-53.9338637,30.2430921,-34.3314764,80.3942259,28.5073300,-87.3068919,-24.1541743,-62.9228410,13.0780939,-25.0526990,35.0859447,-24.7762801,-38.6466789,-58.4283523,31.0604729,0.0000000,24.4562563,1.0964358,-27.1359259,-75.6830794,-16.8543324,20.4345217,-11.1345329,74.1390629,18.2282447,-27.3044720,-45.2890768,-46.7707724,15.3258912,-27.9523169,-6.9763039,117.3099418,18.6394081,-21.2368115,-38.6466789,-34.8322870,22.0692834,-48.2496425,6.5786146,-64.8902575,-51.5289052,-80.9007955,23.7040451,-26.9084544,223.1349942,8.7714862,10.6184058,-127.2119846,-31.4614205,0.8173809,-16.7017993,9.8679219,-35.3946859,-54.7494617,-44.9448864,14.7128556,-18.5575548,97.5827836,-166.3550237,-95.0064189,-123.5984376,104.6247509,-121.5519839,33.9895089,-44.8332688,-40.2569571,-56.1811080,51.4949946,0.0000000,-16.9312544,95.9808615,6.5786146,-21.2368115,-9.6616697,-13.4834659,10.6259513,-25.9805767,116.4895926,-1.0964358,-16.5175201,-56.3597400,-44.9448864,13.8954747,-12.9902884,-5.6437515,71.3703842,25.2180227,-41.2938002,-53.1391834,-32.5850426,8.9911895,12.9902884,31.9812582,1.0964358,-70.7893718,-33.8158440,-38.2031534,-15.5302365,-25.0526990,153.4053085,36.1823804,-34.2148630,-41.8672354,-19.1015767,22.8866643,0.9278777,20.8322796,-29.4955716,-43.4775137,-69.6645739,33.5126155,-45.4660092,26.3144585,-33.0350402,24.1541743,-42.6976421,0.0000000,-28.7642099,38.3752520,-7.0789372,-22.5438960,-20.2251989,34.3299964,19.4854325,4.3857431,-61.3507889,-33.8158440,-64.0464631,39.2342816,-28.7642099,183.7582306,-4.3857431,-22.4166344,-28.9850091,-57.3047302,25.3388069,-26.9084544,35.0859447,7.0789372,-33.8158440,-43.8212642,-1.6347617,5.5672664,-35.0859447,-40.1139773,-14.4925046,-12.3598438,21.2519025,-14.8460438,119.7709896,30.7002016,-22.4166344,-46.6980703,-43.8212642,5.7216661,-10.2066551,203.4466124,116.2221917,-83.7674233,-109.4989234,-38.2031534,78.4685632,-56.6005421,21.9287154,-63.7104346,-56.3597400,-4.4944886,25.3388069,-73.3023414,29.6037658,-31.8552173,-46.6980703,-79.7771734,21.2519025,-18.5575548,16.4465366,-27.1359259,-43.4775137,-41.5740199,-11.4433321,-23.1969435,27.4108943,-84.9472461,-53.1391834,-40.4503978,22.8866643,16.7017993) 

tl;dr think problem every individual has exactly same response value (score) every time point (i.e. perfect homogeneity within individuals), random-effects term explains data; there's nothing left on fixed effects. sure didn't want use gene response variable?? (discovered after running through bunch of modeling attempts, plotting damn data, should first ...)

## simplifying names etc. dd <-  data.frame(timepoint,sample,gene,score,) library("nlme")    m0 <- lme(score ~ timepoint + gene, data=dd,      random = ~1|sample) ## reproduces error 

as first check, let's see if there's in fixed-effect model singular:

lm(score~timepoint+gene,dd) ##  ## call: ## lm(formula = score ~ timepoint + gene, data = dd) ##  ## coefficients: ## (intercept)    timepoint         gene   ##    5.414652    -0.004064    -0.024485   

no, works fine.

let's try in lme4:

library(lme4) m1 <- lmer(score ~ timepoint + gene + (1|sample), data=dd) ## error in fn(x, ...) : downdated vtv not positive definite 

let's try scaling & centering data -- helps:

ddsc <- transform(dd,      timepoint=scale(timepoint),      gene=scale(gene)) 

lme still fails:

m0sc <- lme(score ~ timepoint + gene, data=ddsc,      random = ~1|sample) 

lmer works -- sort of!

m1sc <- lmer(score ~ timepoint + gene + (1|sample), data=ddsc) ## warning message: ## in checkconv(attr(opt, "derivs"), opt$par, ctrl = control$checkconv,  : ##   model unidentifiable: large eigenvalue ##  - rescale variables? 

the results give coefficients parameters vanishingly close zero. (the residual variance vanishingly small.)

## m1sc ## linear mixed model fit reml ['lmermod'] ## formula: score ~ timepoint + gene + (1 | sample) ##    data: ddsc ## reml criterion @ convergence: -9062.721 ## random effects: ##  groups   name        std.dev.  ##  sample   (intercept) 7.838e-01 ##  residual             3.344e-07 ## number of obs: 348, groups:  sample, 8 ## fixed effects: ## (intercept)    timepoint         gene   ##   5.714e+00   -4.194e-16   -1.032e-14   

at point can think of couple of possibilities:

  • there's experimental design means random effects somehow (?) confounded 1 or both of fixed effects
  • these simulated data artificially constructed balanced ... ?

library(ggplot2); theme_set(theme_bw()) ggplot(dd,aes(timepoint,score,group=sample,colour=gene))+       geom_point(size=4)+       geom_line(colour="red",alpha=0.5) 

enter image description here

aha!


Comments

Popular posts from this blog

javascript - RequestAnimationFrame not working when exiting fullscreen switching space on Safari -

jsf - How to ajax update an item in the footer of a PrimeFaces dataTable? -

django - CSRF verification failed. Request aborted. CSRF cookie not set -