massart97ex3.Rd
Sample dataset from p. 188 to test the package.
massart97ex3
A dataframe containing 6 levels of x values with 5 observations of y for each level.
Massart, L.M, Vandenginste, B.G.M., Buydens, L.M.C., De Jong, S., Lewi, P.J., Smeyers-Verbeke, J. (1997) Handbook of Chemometrics and Qualimetrics: Part A, Chapter 8.
# For reproducing the results for replicate standard measurements in example 8, # we need to do the calibration on the means when using chemCal > 0.2 weights <- with(massart97ex3, { yx <- split(y, x) ybar <- sapply(yx, mean) s <- round(sapply(yx, sd), digits = 2) w <- round(1 / (s^2), digits = 3) }) massart97ex3.means <- aggregate(y ~ x, massart97ex3, mean) m3.means <- lm(y ~ x, w = weights, data = massart97ex3.means) # The following concords with the book p. 200 inverse.predict(m3.means, 15, ws = 1.67) # 5.9 +- 2.5#> $Prediction #> [1] 5.865367 #> #> $`Standard Error` #> [1] 0.8926109 #> #> $Confidence #> [1] 2.478285 #> #> $`Confidence Limits` #> [1] 3.387082 8.343652 #>#> $Prediction #> [1] 44.06025 #> #> $`Standard Error` #> [1] 2.829162 #> #> $Confidence #> [1] 7.855012 #> #> $`Confidence Limits` #> [1] 36.20523 51.91526 #># The LOD is only calculated for models from unweighted regression # with this version of chemCal m0 <- lm(y ~ x, data = massart97ex3) lod(m0)#> $x #> [1] 5.407085 #> #> $y #> [1] 13.63911 #>#> $x #> [1] 9.627349 #> #> $y #> [1] 22.00246 #># For calculating the limit of quantification from a model from weighted # regression, we need to supply weights, internally used for inverse.predict # If we are not using a variance function, we can use the weight from # the above example as a first approximation (x = 15 is close to our # loq approx 14 from above). loq(m3.means, w.loq = 1.67)#> $x #> [1] 7.346195 #> #> $y #> [1] 17.90777 #># The weight for the loq should therefore be derived at x = 7.3 instead # of 15, but the graphical procedure of Massart (p. 201) to derive the # variances on which the weights are based is quite inaccurate anyway.