[R] Using model operator in stepwise function's upper scope formula

Tue Oct 5 01:39:33 CEST 2004

```Hello:

I am doing forward stepwise analysis on the glm model. I am trying to use model
operator in the "upper" scope formula, for example,

scope=list(lower=~1,upper=~ .^2)

but the upper bound of the scope seems to be ignored and add1 is not performed
at all, while if the terms are explicitly listed in the formula, the step
function seems to work properly. Example:

> version
platform sparc-sun-solaris2.9
arch     sparc
os       solaris2.9
system   sparc, solaris2.9
status
major    1
minor    9.0
year     2004
month    04
day      12
language R

> testdata
effect  fa1 fa2    fa3
1  0.5054526 -1.4   1 -15.42
2  0.1366526 -2.5   3 -14.72
3  0.4798526 -1.1   3 -16.43
4  0.5566526 -4.6   2 -17.62
5  0.6568526 -3.5   7  -5.41
6  0.6653526  0.0   5 -11.88
7  0.6376526  0.0   5 -11.72
8  0.5203526 -2.9  -1 -14.72
9  0.4905526 -2.1   2 -17.68
10 0.6376526 -1.1   1 -13.39

> step (glm(effect ~ 1 , data=testdata), scope=list(lower=~1,upper=~.),
direction='forward')
Start:  AIC= -5.89
effect ~ 1

Call:  glm(formula = effect ~ 1, data = testdata)

Coefficients:
(Intercept)
0.5287

Degrees of Freedom: 9 Total (i.e. Null);  9 Residual
Null Deviance:      0.2178
Residual Deviance: 0.2178       AIC: -5.89

================================================================

But if I listed the term explicitly in the formula, then step function seemed to
work correctly:

> step (glm(effect ~ 1 , data=testdata),
scope=list(lower=~1,upper=~fa1+fa2+fa3), direction='forward')
Start:  AIC= -5.89
effect ~ 1

Df Deviance     AIC
+ fa3   1   0.1778 -5.9188
<none>      0.2178 -5.8901
+ fa2   1   0.2023 -4.6271
+ fa1   1   0.2065 -4.4194

Step:  AIC= -5.92
effect ~ fa3

Df Deviance     AIC
<none>      0.1778 -5.9188
+ fa1   1   0.1698 -4.3783
+ fa2   1   0.1770 -3.9605

Call:  glm(formula = effect ~ fa3, data = testdata)

Coefficients:
(Intercept)          fa3
0.78310      0.01830

Degrees of Freedom: 9 Total (i.e. Null);  8 Residual
Null Deviance:      0.2178
Residual Deviance: 0.1778       AIC: -5.919
================================================================

I've lookup the online manual of step function but couldn't find a solution.