aboutsummaryrefslogtreecommitdiff
path: root/inst/doc/chemCal.tex
diff options
context:
space:
mode:
Diffstat (limited to 'inst/doc/chemCal.tex')
-rw-r--r--inst/doc/chemCal.tex127
1 files changed, 127 insertions, 0 deletions
diff --git a/inst/doc/chemCal.tex b/inst/doc/chemCal.tex
new file mode 100644
index 0000000..a4b4459
--- /dev/null
+++ b/inst/doc/chemCal.tex
@@ -0,0 +1,127 @@
+\documentclass[a4paper]{article}
+%\VignetteIndexEntry{Short manual for the chemCal package}
+\newcommand{\chemCal}{{\tt chemCal}}
+\newcommand{\calplot}{{\tt calplot}}
+\newcommand{\calpredict}{{\tt calpredict}}
+\newcommand{\R}{{\tt R}}
+\usepackage{hyperref}
+
+\title{Basic calibration functions for analytical chemistry}
+\author{Johannes Ranke}
+
+\usepackage{/usr/share/R/share/texmf/Sweave}
+\begin{document}
+\maketitle
+
+The \chemCal{} package was first designed in the course of a lecture and lab
+course on "analytics of organic trace contaminants" at the University of Bremen
+from October to December 2004. In the fall 2005, an email exchange with
+Ron Wehrens led to the belief that it could be heavily improved if the
+inverse prediction method given in \cite{massart97} would be implemented,
+since it also covers the case of weighted regression.
+
+At the moment, the package only consists of two functions, working
+on univariate linear models of class \texttt{lm} or \texttt{rlm}.
+
+When calibrating an analytical method, the first task is to generate
+a suitable model. If we want to use the \chemCal{} functions, we
+will have to restrict ourselves to univariate, possibly weighted, linear
+regression so far.
+
+Once such a model has been created, the calibration can be graphically
+shown by using the \texttt{calplot} function:
+
+\begin{Schunk}
+\begin{Sinput}
+> library(chemCal)
+> data(massart97ex3)
+> attach(massart97ex3)
+> yx <- split(y, factor(x))
+> ybar <- sapply(yx, mean)
+> s <- round(sapply(yx, sd), digits = 2)
+> w <- round(1/(s^2), digits = 3)
+> weights <- w[factor(x)]
+> m <- lm(y ~ x, w = weights)
+> calplot(m)
+\end{Sinput}
+\end{Schunk}
+\includegraphics{chemCal-001}
+
+This is a reproduction of Example 8 in \cite{massart97}. We can
+see the influence of the weighted regression on the confidence
+and prediction bands of the calibration.
+
+If we now want to predict a new x value from measured y values,
+we use the \texttt{inverse.predict} function:
+
+\begin{Schunk}
+\begin{Sinput}
+> inverse.predict(m, 15, ws = 1.67)
+\end{Sinput}
+\begin{Soutput}
+$Prediction
+[1] 5.865367
+
+$`Standard Error`
+[1] 10.66054
+
+$Confidence
+[1] 29.59840
+
+$`Confidence Limits`
+[1] -23.73303 35.46376
+\end{Soutput}
+\end{Schunk}
+
+The weight \texttt{ws} assigned to the measured y value has to be
+given by the user in the case of weighted regression. By default,
+the mean of the weights used in the linear regression is used.
+
+\section*{Theory}
+Equation 8.28 in \cite{massart97} gives a general equation for predicting the
+standard error $s_{\hat{x_s}}$ for an x value predicted from measurements of y
+according to the linear calibration function $ y = b_0 + b_1 \cdot x$:
+
+\begin{equation}
+s_{\hat{x_s}} = \frac{s_e}{b_1} \sqrt{\frac{1}{w_s m} + \frac{1}{\sum{w_i}} +
+ \frac{(\bar{y_s} - \bar{y_w})^2 \sum{w_i}}
+ {{b_1}^2 \left( \sum{w_i} \sum{w_i {x_i}^2} - {\left( \sum{ w_i x_i } \right)}^2 \right) }}
+\end{equation}
+
+with
+
+\begin{equation}
+s_e = \sqrt{ \frac{\sum w_i (y_i - \hat{y_i})^2}{n - 2}}
+\end{equation}
+
+where $w_i$ is the weight for calibration standard $i$, $y_i$ is the mean $y$
+value (!) observed for standard $i$, $\hat{y_i}$ is the estimated value for
+standard $i$, $n$ is the number calibration standards, $w_s$ is the weight
+attributed to the sample $s$, $m$ is the number of replicate measurements of
+sample $s$, $\bar{y_s}$ is the mean response for the sample,
+$\bar{y_w} = \frac{\sum{w_i y_i}}{\sum{w_i}}$ is the weighted mean of responses
+$y_i$, and $x_i$ is the given $x$ value for standard $i$.
+
+The weight $w_s$ for the sample should be estimated or calculated in accordance
+to the weights used in the linear regression.
+
+I adjusted the above equation in order to be able to take a different precisions
+in standards and samples into account. In analogy to Equation 8.26 from \cite{massart97}
+we get
+
+\begin{equation}
+s_{\hat{x_s}} = \frac{1}{b_1} \sqrt{\frac{{s_s}^2}{w_s m} +
+ {s_e}^2 \left( \frac{1}{\sum{w_i}} +
+ \frac{(\bar{y_s} - \bar{y_w})^2 \sum{w_i}}
+ {{b_1}^2 \left( \sum{w_i} \sum{w_i {x_i}^2} - {\left( \sum{ w_i x_i } \right)}^2 \right) } \right) }
+\end{equation}
+
+\begin{thebibliography}{1}
+\bibitem{massart97}
+Massart, L.M, Vandenginste, B.G.M., Buydens, L.M.C., De Jong, S., Lewi, P.J.,
+Smeyers-Verbeke, J.
+\newblock Handbook of Chemometrics and Qualimetrics: Part A,
+\newblock Elsevier, Amsterdam, 1997
+\end{thebibliography}
+
+\end{document}

Contact - Imprint