expressions: Add support for 2- and 3-operand RND function.
[pspp] / doc / regression.texi
1 @node REGRESSION
2 @section REGRESSION
3
4 @cindex regression
5 @cindex linear regression
6 The @cmd{REGRESSION} procedure fits linear models to data via least-squares
7 estimation. The procedure is appropriate for data which satisfy those
8 assumptions typical in linear regression:
9
10 @itemize @bullet
11 @item The data set contains @math{n} observations of a dependent variable, say
12 @math{Y_1,@dots{},Y_n}, and @math{n} observations of one or more explanatory
13 variables.
14 Let @math{X_{11}, X_{12}}, @dots{}, @math{X_{1n}} denote the @math{n} observations
15 of the first explanatory variable;
16 @math{X_{21}},@dots{},@math{X_{2n}} denote the @math{n} observations of the second
17 explanatory variable;
18 @math{X_{k1}},@dots{},@math{X_{kn}} denote the @math{n} observations of 
19 the @math{k}th explanatory variable.
20
21 @item The dependent variable @math{Y} has the following relationship to the 
22 explanatory variables:
23 @math{Y_i = b_0 + b_1 X_{1i} + ... + b_k X_{ki} + Z_i} 
24 where @math{b_0, b_1, @dots{}, b_k} are unknown
25 coefficients, and @math{Z_1,@dots{},Z_n} are independent, normally
26 distributed @dfn{noise} terms with mean zero and common variance.
27 The noise, or @dfn{error} terms are unobserved.
28 This relationship is called the @dfn{linear model}.
29 @end itemize
30
31 The @cmd{REGRESSION} procedure estimates the coefficients
32 @math{b_0,@dots{},b_k} and produces output relevant to inferences for the
33 linear model. 
34
35 @menu
36 * Syntax::                      Syntax definition.
37 * Examples::                    Using the REGRESSION procedure.
38 @end menu
39
40 @node Syntax
41 @subsection Syntax
42
43 @vindex REGRESSION
44 @display
45 REGRESSION
46         /VARIABLES=@var{var_list}
47         /DEPENDENT=@var{var_list}
48         /STATISTICS=@{ALL, DEFAULTS, R, COEFF, ANOVA, BCOV, CI[@var{conf}]@}
49         /SAVE=@{PRED, RESID@}
50 @end display
51
52 The @cmd{REGRESSION} procedure reads the active dataset and outputs
53 statistics relevant to the linear model specified by the user.
54
55 The @subcmd{VARIABLES} subcommand, which is required, specifies the list of
56 variables to be analyzed.  Keyword @subcmd{VARIABLES} is required. The
57 @subcmd{DEPENDENT} subcommand specifies the dependent variable of the linear
58 model. The @subcmd{DEPENDENT} subcommand is required. All variables listed in
59 the @subcmd{VARIABLES} subcommand, but not listed in the @subcmd{DEPENDENT} subcommand,
60 are treated as explanatory variables in the linear model.
61
62 All other subcommands are optional:
63
64 The @subcmd{STATISTICS} subcommand specifies additional statistics to be displayed.
65 The following keywords are accepted:
66
67 @table @subcmd
68 @item ALL
69 All of the statistics below.
70 @item R
71 The ratio of the sums of squares due to the model to the total sums of
72 squares for the dependent variable.
73 @item COEFF
74 A table containing the estimated model coefficients and their standard errors.
75 @item CI (@var{conf})
76 This item is only relevant if COEFF has also been selected.  It specifies that the
77 confidence interval for the coefficients should be printed.  The optional value @var{conf},
78 which must be in parentheses, is the desired confidence level expressed as a percentage.
79 @item ANOVA
80 Analysis of variance table for the model.
81 @item BCOV
82 The covariance matrix for the estimated model coefficients.
83 @item DEFAULT
84 The same as if R, COEFF, and ANOVA had been selected.
85 @end table
86
87 The @subcmd{SAVE} subcommand causes @pspp{} to save the residuals or predicted
88 values from the fitted
89 model to the active dataset. @pspp{} will store the residuals in a variable
90 called @samp{RES1} if no such variable exists, @samp{RES2} if @samp{RES1} 
91 already exists,
92 @samp{RES3} if @samp{RES1} and @samp{RES2} already exist, etc. It will
93 choose the name of
94 the variable for the predicted values similarly, but with @samp{PRED} as a
95 prefix.
96 When @subcmd{SAVE} is used, @pspp{} ignores @cmd{TEMPORARY}, treating
97 temporary transformations as permanent.
98
99 @node Examples
100 @subsection Examples
101 The following @pspp{} syntax will generate the default output and save the
102 predicted values and residuals to the active dataset.
103
104 @example
105 title 'Demonstrate REGRESSION procedure'.
106 data list / v0 1-2 (A) v1 v2 3-22 (10).
107 begin data.
108 b  7.735648 -23.97588
109 b  6.142625 -19.63854
110 a  7.651430 -25.26557
111 c  6.125125 -16.57090
112 a  8.245789 -25.80001
113 c  6.031540 -17.56743
114 a  9.832291 -28.35977
115 c  5.343832 -16.79548
116 a  8.838262 -29.25689
117 b  6.200189 -18.58219
118 end data.
119 list.
120 regression /variables=v0 v1 v2 /statistics defaults /dependent=v2 
121            /save pred resid /method=enter.
122 @end example