/
lm-tests.Rout.save
91 lines (84 loc) · 3.26 KB
/
lm-tests.Rout.save
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
R : Copyright 1999, The R Development Core Team
Version 0.99.0 Under development (unstable) (December 31, 1999)
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 a list.
Type "demo()" for some demos, "help()" for on-line help, or
"help.start()" for a HTML browser interface to help.
Type "q()" to quit R.
> ###-- Linear Models, basic functionality -- weights included.
>
> ## From John Maindonald :
> roller <- data.frame(
+ weight = c(1.9, 3.1, 3.3, 4.8, 5.3, 6.1, 6.4, 7.6, 9.8, 12.4),
+ depression = c( 2, 1, 5, 5, 20, 20, 23, 10, 30, 25))
>
> roller.lmu <- lm(weight~depression, data=roller)
> roller.lsfu <- lsfit(roller$depression, roller$weight)
>
> roller.lsf <- lsfit(roller$depression, roller$weight, wt = 1:10)
> roller.lsf0 <- lsfit(roller$depression, roller$weight, wt = 0:9)
> roller.lm <- lm(weight~depression, data=roller, weights= 1:10)
> roller.lm0 <- lm(weight~depression, data=roller, weights= 0:9)
> roller.lm9 <- lm(weight~depression, data=roller[-1,],weights= 1:9)
> roller.glm <- glm(weight~depression, data=roller, weights= 1:10)
> roller.glm0<- glm(weight~depression, data=roller, weights= 0:9)
>
> all.equal(deviance(roller.lm),
+ deviance(roller.glm))
[1] TRUE
> all.equal(weighted.residuals(roller.lm),
+ residuals (roller.glm))
[1] TRUE
>
> all.equal(deviance(roller.lm0),
+ deviance(roller.glm0))
[1] TRUE
> all.equal(weighted.residuals(roller.lm0, drop=FALSE),
+ residuals (roller.glm0))
[1] TRUE
>
> (im.lm0 <- influence.measures(roller.lm0))
Influence measures of
lm(formula = weight ~ depression, data = roller, weights = 0:9) :
dfb.1. dfb.dprs dffit cov.r cook.d hat inf
2 -0.0530 0.0482 -0.0530 1.551 0.001635 0.1277
3 -0.1769 0.1538 -0.1782 1.569 0.018065 0.1742
4 0.0130 -0.0113 0.0131 1.842 0.000100 0.2613
5 -0.1174 -0.0185 -0.3370 1.049 0.055523 0.0892
6 -0.1031 -0.0162 -0.2960 1.229 0.045771 0.1114
7 -0.0118 -0.1891 -0.5010 1.070 0.119319 0.1555
8 0.7572 -0.5948 0.7972 1.467 0.309976 0.3510
9 0.1225 -0.2067 -0.2664 2.391 0.040794 0.4470 *
10 -0.3348 1.1321 2.0937 0.233 0.895835 0.2826 *
>
> all.equal(unname(im.lm0 $ infmat),
+ unname(cbind( dfbetas (roller.lm0)
+ , dffits (roller.lm0)
+ , covratio (roller.lm0)
+ ,cooks.distance(roller.lm0)
+ ,lm.influence (roller.lm0)$hat)
+ ))
[1] TRUE
>
> all.equal(rstandard(roller.lm9),
+ rstandard(roller.lm0),tol=1e-15)
[1] TRUE
> all.equal(rstudent(roller.lm9),
+ rstudent(roller.lm0),tol=1e-15)
[1] TRUE
>
> all.equal(summary(roller.lm0)$coef,
+ summary(roller.lm9)$coef, tol=1e-15)
[1] TRUE
> all.equal(print(anova(roller.lm0), signif.st=FALSE),
+ anova(roller.lm9), tol=1e-15)
Analysis of Variance Table
Response: weight
Df Sum Sq Mean Sq F value Pr(>F)
depression 1 158.408 158.408 5.4302 0.05259
Residuals 7 204.202 29.172
[1] TRUE
>