diff options
author | ranke <ranke@d1b72e20-2ee0-0310-a1c4-ad5adbbefcdc> | 2007-03-29 11:57:20 +0000 |
---|---|---|
committer | ranke <ranke@d1b72e20-2ee0-0310-a1c4-ad5adbbefcdc> | 2007-03-29 11:57:20 +0000 |
commit | cdd44b9e4f71b05f5bec46e4b12e6bb2567ecc30 (patch) | |
tree | ba39bffa9e680ff9eb97ccf7aa23a9d88e270d5b | |
parent | d311733c45526f6fe6b5459ffc37d2bbb15f6eae (diff) |
Now using the "port" algorithm for the model fitting
by nls, because in some cases it converges when the
default algorithm does not.
git-svn-id: http://kriemhild.uft.uni-bremen.de/svn/drfit@87 d1b72e20-2ee0-0310-a1c4-ad5adbbefcdc
-rw-r--r-- | DESCRIPTION | 4 | ||||
-rw-r--r-- | R/drfit.R | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/DESCRIPTION b/DESCRIPTION index eccc47a..997f7c1 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: drfit -Version: 0.05-86 -Date: 2006-08-28 +Version: 0.05-87 +Date: 2007-03-29 Title: Dose-response data evaluation Author: Johannes Ranke <jranke@uni-bremen.de> Maintainer: Johannes Ranke <jranke@uni-bremen.de> @@ -72,7 +72,7 @@ drfit <- function(data, startlogED50 = NA, chooseone=TRUE, length(subset(linlogitWrong,linlogitWrong == i))==0 && length(subset(allWrong,allWrong == i))==0) { m <- try(nls(response ~ linlogitf(dose,1,f,logED50,b), - data=tmp, + data=tmp, algorithm="port", start=list(f=f0,logED50=startlogED50[[i]],b=b0))) if (!inherits(m, "try-error")) { fit <- TRUE @@ -114,7 +114,7 @@ drfit <- function(data, startlogED50 = NA, chooseone=TRUE, if (probit && length(subset(allWrong,allWrong == i))==0) { m <- try(nls(response ~ pnorm(-log10(dose),-logED50,scale), - data=tmp, + data=tmp, algorithm="port", start=list(logED50=startlogED50[[i]],scale=ps0))) if (chooseone==FALSE || fit==FALSE) { if (!inherits(m, "try-error")) { @@ -157,7 +157,7 @@ drfit <- function(data, startlogED50 = NA, chooseone=TRUE, if (logit && length(subset(allWrong,allWrong == i))==0) { m <- try(nls(response ~ plogis(-log10(dose),-logED50,scale), - data=tmp, + data=tmp, algorithm="port", start=list(logED50=startlogED50[[i]],scale=ls0))) if (chooseone==FALSE || fit==FALSE) { if (!inherits(m, "try-error")) { @@ -199,7 +199,7 @@ drfit <- function(data, startlogED50 = NA, chooseone=TRUE, if (weibull && length(subset(allWrong,allWrong == i))==0) { m <- try(nls(response ~ pweibull(-log10(dose)+location,shape), - data=tmp, + data=tmp, algorithm="port", start=list(location=startlogED50[[i]],shape=ws0))) if (chooseone==FALSE || fit==FALSE) { if (!inherits(m, "try-error")) { |