Hi Bernardo,
it may sound simple-minded, but it looks to me as though you have a
problem with the model. Unfortunately it's difficult for us to
diagnose the problem because you didn't send an example that we can
reproduce. We don't have the "base" data.
Based on my understanding of your code, you might try
lme(logit ~ dis*Modality + non.dis*Modality,
random = ~ dis+non.dis | id,
data = data.bi)
If this doesn't work, try fitting a simpler model, eg
lme(logit ~ dis*Modality + non.dis*Modality,
random = ~ | id,
data = data.bi)
and then using update() to increment towards the full model of
interest. You can also change the model-fitting engine, I have
sometimes had success using Nelder-Mead where nlminb failed. For more
information about this see
?lmeControl
Can I also recommend that you use more spaces in your code?
Good luck
Andrew
On Sun, Nov 04, 2007 at 09:18:09AM -0200, Bernardo Rangel Tura
wrote:>
> Hi R-masters
>
> I read the article: Bivariate analysis of sensitivity and specificity
> produces informative summary measures in diagnostic reviews.
>
> In this paper i proposed a bivariate mixed model and use SAS proc mixed
> to adjust the estimates.
>
>
> I thinks use R to make the same and try with this code:
>
> base<-read.csv("base.csv")
> adj<-.5
> attach(base)
>
> sens<-(VP+adj)/(VP+FN+2*adj)
> log.S<-log(sens/(1-sens))
> var.log.S<-1/(sens*(1-sens)*(VP+FN))
> dis<-rep(1,length(log.S))
> non.dis<-rep(0,length(log.S))
> data.S<-data.frame(id,Modality,log.S,var.log.S,dis,non.dis)
>
names(data.S)<-c("id","Modality","logit","var.logit","dis","non.dis")
>
> esp<-(VN+adj)/(VN+FP+2*adj)
> log.E<-log((1-esp)/esp)
> var.log.E<-1/(esp*(1-esp)*(VN+FP))
> dis<-rep(0,length(log.E))
> non.dis<-rep(1,length(log.E))
> data.E<-data.frame(id,Modality,log.E,var.log.E,dis,non.dis)
>
names(data.E)<-c("id","Modality","logit","var.logit","dis","non.dis")
>
> data.bi<-rbind(data.S,data.E)
> require(nlme)
> lme(logit~dis*Modality+non.dis*Modality, random=~dis|id+non.dis|
> id,data=data.bi)
>
> but i recive a erro msg :
>
> Error in MEEM(object, conLin, control$niterEM) :
> Singularity in backsolve at level 0, block 1
>
>
> How in solve this problem? Whats is wrong?
>
> Thanks in advance
> --
> Bernardo Rangel Tura, M.D,Ph.D
> National Institute of Cardiology
> Brazil
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
--
Andrew Robinson
Department of Mathematics and Statistics Tel: +61-3-8344-9763
University of Melbourne, VIC 3010 Australia Fax: +61-3-8344-4599
http://www.ms.unimelb.edu.au/~andrewpr
http://blogs.mbs.edu/fishing-in-the-bay/