1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
|
R version 3.1.0 (2014-04-10) -- "Spring Dance"
Copyright (C) 2014 The R Foundation for Statistical Computing
Platform: x86_64-pc-linux-gnu (64-bit)
R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.
R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.
Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.
> require(chemCal)
Loading required package: chemCal
> data(massart97ex1)
> m <- lm(y ~ x, data = massart97ex1)
> inverse.predict(m, 15) # 6.1 +- 4.9
$Prediction
[1] 6.09381
$`Standard Error`
[1] 1.767278
$Confidence
[1] 4.906751
$`Confidence Limits`
[1] 1.187059 11.000561
> inverse.predict(m, 90) # 43.9 +- 4.9
$Prediction
[1] 43.93983
$`Standard Error`
[1] 1.767747
$Confidence
[1] 4.908053
$`Confidence Limits`
[1] 39.03178 48.84788
> inverse.predict(m, rep(90,5)) # 43.9 +- 3.2
$Prediction
[1] 43.93983
$`Standard Error`
[1] 1.141204
$Confidence
[1] 3.168489
$`Confidence Limits`
[1] 40.77134 47.10832
>
> data(massart97ex3)
> attach(massart97ex3)
> yx <- split(y, 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)
>
> inverse.predict(m, 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
> inverse.predict(m, 90, ws = 0.145) # 44.1 +- 7.9
$Prediction
[1] 44.06025
$`Standard Error`
[1] 2.829162
$Confidence
[1] 7.855012
$`Confidence Limits`
[1] 36.20523 51.91526
>
> m0 <- lm(y ~ x)
> lod(m0)
$x
[1] 5.407085
$y
1
13.63911
>
> loq(m0)
$x
[1] 13.97764
$y
1
30.6235
> loq(m, w.loq = 1.67)
$x
[1] 7.346195
$y
1
17.90777
>
> proc.time()
user system elapsed
0.529 0.327 0.443
|