diff options
author | ranke <ranke@5fad18fb-23f0-0310-ab10-e59a3bee62b4> | 2006-06-23 15:33:27 +0000 |
---|---|---|
committer | ranke <ranke@5fad18fb-23f0-0310-ab10-e59a3bee62b4> | 2006-06-23 15:33:27 +0000 |
commit | 9e0dae397df8c18e7333d2604cae96b2a7927420 (patch) | |
tree | b513b791985426bab6c18850d2f8c308c411c1a5 /R/loq.R | |
parent | fb7ea47c774f67b8c26a6844f4ade8935a8653cc (diff) |
- inverse.predict now has a var.s argument instead of the never
tested ss argument. This is documented in the updated vignette
- loq() now has w.loq and var.loq arguments, and stops with a message
if neither are specified and the model has weights.
- calplot doesn't stop any more for weighted regression models, but
only refrains from drawing prediction bands
- Added method = "din" to lod(), now that I actually have it (DIN 32645) and
was able to see which approximation is used therein.
- removed the demos, as the examples and tests are already partially
duplicated
- The vignette is more of a collection of various notes, but should
certainly be helpful for the user.
- Version bump to 0.1-xxx
git-svn-id: http://kriemhild.uft.uni-bremen.de/svn/chemCal@16 5fad18fb-23f0-0310-ab10-e59a3bee62b4
Diffstat (limited to 'R/loq.R')
-rw-r--r-- | R/loq.R | 18 |
1 files changed, 14 insertions, 4 deletions
@@ -1,22 +1,32 @@ -loq <- function(object, ..., alpha = 0.05, k = 3, n = 1, w = "auto") +loq <- function(object, ..., alpha = 0.05, k = 3, n = 1, w.loq = "auto", + var.loq = "auto") { UseMethod("loq") } -loq.default <- function(object, ..., alpha = 0.05, k = 3, n = 1, w = "auto") +loq.default <- function(object, ..., alpha = 0.05, k = 3, n = 1, w.loq = "auto", + var.loq = "auto") { stop("loq is only implemented for univariate lm objects.") } -loq.lm <- function(object, ..., alpha = 0.05, k = 3, n = 1, w = "auto") +loq.lm <- function(object, ..., alpha = 0.05, k = 3, n = 1, w.loq = "auto", + var.loq = "auto") { + if (length(object$weights) > 0 && var.loq == "auto" && w.loq == "auto") { + stop(paste("If you are using a model from weighted regression,", + "you need to specify a reasonable approximation for the", + "weight (w.loq) or the variance (var.loq) at the", + "limit of quantification")) + } xname <- names(object$model)[[2]] yname <- names(object$model)[[1]] f <- function(x) { newdata <- data.frame(x = x) names(newdata) <- xname y <- predict(object, newdata) - p <- inverse.predict(object, rep(y, n), ws = w, alpha = alpha) + p <- inverse.predict(object, rep(y, n), ws = w.loq, + var.s = var.loq, alpha = alpha) (p[["Prediction"]] - k * p[["Confidence"]])^2 } tmp <- optimize(f,interval=c(0,max(object$model[[2]]))) |