The RESPONSE statement specifies functions of the response probabilities. The procedure models these response functions as linear combinations of the parameters.
By default, PROC CATMOD uses the standard response functions (generalized logits, which are explained in detail in the section Understanding the Standard Response Functions). With these standard response functions, the default estimation method is maximum likelihood, but you can use the WLS option in the MODEL statement to request weighted least squares estimation. With other response functions (specified in the RESPONSE statement), the default (and only) estimation method is weighted least squares.
You can specify more than one RESPONSE statement, in which case each RESPONSE statement produces a separate analysis. If the computed response functions for any population are linearly dependent (yielding a singular covariance matrix), then PROC CATMOD displays an error message and stops processing. See the section Cautions for methods of dealing with this.
The function specification can be any of the items in the following list. For an example of response functions generated and formulas for q (the number of response functions), see the section More on Response Functions.
Table 32.6 summarizes the options available in the RESPONSE statement.
Table 32.6: RESPONSE Statement Options
Option |
Description |
---|---|
Specifies response functions as adjacent-category logits |
|
Specifies that the response functions are cumulative logits |
|
Specifies that the response functions are the joint response probabilities |
|
Specifies that the response functions are generalized logits |
|
Specifies that the response functions are marginal probabilities |
|
Specifies that the response functions are the means dependent variables |
|
Directly reads the response functions and their covariance matrix from the input data set |
|
Produces a SAS data set that contains predicted values, standard errors and residuals |
|
Produces a SAS data set that contains the estimated parameter vector and its estimated covariance matrix |
|
Displays the title |
You can specify the following options in the RESPONSE statement after a slash.
Suppose the dependent variable A
has three levels and is the only response-effect in the MODEL statement. The following table shows the proportions upon which the response functions are defined:
Value of |
1 |
2 |
3 |
---|---|---|---|
Proportions: |
|
|
|
Note that . The following table shows the response functions generated for each population:
Function |
Value |
|
---|---|---|
Specification |
of q |
Response Function |
none |
2 |
|
ALOGITS |
2 |
|
CLOGITS |
2 |
|
JOINT |
2 |
|
LOGITS |
2 |
|
MARGINAL |
2 |
|
MEAN |
1 |
|
Without a function specification, the default response functions are generalized logits. |
Now, suppose the dependent variables A
and B
each have three levels (valued 1, 2, and 3 each) and the response-effect in the MODEL statement is A
*B
. The following table shows the proportions upon which the response functions are defined:
Value of |
1 |
1 |
1 |
2 |
2 |
2 |
3 |
3 |
3 |
---|---|---|---|---|---|---|---|---|---|
Value of |
1 |
2 |
3 |
1 |
2 |
3 |
1 |
2 |
3 |
Proportions: |
|
|
|
|
|
|
|
|
|
The marginal totals for the preceding table are defined as follows:
where . The following table shows the response functions generated for each population:
Function |
Value |
|
---|---|---|
Specification |
of q |
Response Function |
none |
8 |
|
ALOGITS |
4 |
|
CLOGITS |
4 |
|
JOINT |
8 |
|
LOGITS |
4 |
|
MARGINAL |
4 |
|
MEAN |
2 |
|
Without a function specification, the default response functions are generalized logits. |
The READ and transformation function specifications are not shown in the preceding table. For these two situations, there is not a general response function; the response functions that are generated depend on what you specify.
Another important aspect of the function specification is the number of response functions generated per population, q. Let represent the number of levels for the ith dependent variable in the MODEL statement, and let d represent the number of dependent variables in the MODEL statement. Then, if the function specification is ALOGITS, CLOGITS, LOGITS, or MARGINALS, the number of response functions is
If the function specification is JOINT or the default (generalized logits), the number of response functions per population is
where r is the number of response profiles. If every possible cross-classification of the dependent variables is observed in the samples, then
Otherwise, r is the number of cross-classifications actually observed.
If the function specification is MEANS, the number of response functions per population is .
Some example response statements are shown in the following table:
Example |
Result |
---|---|
|
Marginals for each dependent variable |
|
The mean of each dependent variable |
|
Generalized logits of the marginal probabilities |
|
Cumulative logits of the marginal probabilities |
|
Adjacent-category logits of the marginal probabilities |
|
The joint probabilities |
|
The logit |
|
Generalized logits |
|
The mean score, with scores of 1, 2, and 3 corresponding to the three response levels |
|
Four response functions and their covariance matrix, read directly from the input data set |
If you specify a transformation, it is applied to the vector that contains the sample proportions in each population. The transformation can be any combination of the following four operations:
Operation |
Specification |
---|---|
linear combination |
matrix literal |
linear combination |
matrix literal |
logarithm |
|
exponential |
|
adding constant |
matrix literal |
If more than one operation is specified, then PROC CATMOD applies the operations consecutively from right to left.
A matrix literal is a matrix of numbers with each row of the matrix separated from the next by a comma. If you specify a linear combination, in most cases the is not needed. The following statement defines the response function . The is needed to separate the two matrix literals '1' and '1 0'.
response + 1 * 1 0;
The of a vector transforms each element of the vector into its natural logarithm; the of a vector transforms each element into its exponential function (antilogarithm).
In order to specify a linear response function for data that have r = 3 response categories, you can specify either of the following RESPONSE statements:
response * 1 0 0 , 0 1 0; response 1 0 0 , 0 1 0;
The matrix literal in the preceding statements specifies a matrix, which is applied to each population as follows:
where , , and are sample proportions for the three response categories in a population, and and are the two response functions computed for that population. Therefore, this response function sets and in each population.
As another example of the linear response function, suppose you have two dependent variables corresponding to two observers who evaluate the same subjects. If the observers grade on the same three-point scale and if all nine possible responses are observed, then the following RESPONSE statement would compute the probability that the observers agree on their assessments:
response 1 0 0 0 1 0 0 0 1;
This response function is then computed as
where denotes the probability that a subject gets a grade of i from the first observer and j from the second observer.
If the function is a compound function, requiring more than one operation to specify it, then the operations should be listed so that the first operation to be applied is on the right and the last operation to be applied is on the left. For example, if there are two response levels, you can have the following response function:
response 1 -1 log;
This is equivalent to the matrix expression
which is the logit response function since when there are only two response levels.
The following statement specifies another example of a compound response function:
response exp 1 -1 * 1 0 0 1, 0 1 1 0 log;
This is equivalent to the matrix expression
where is the vector of sample proportions for some population,
If the four responses are based on two dependent variables, each with two levels, then the function can also be written as
which is the odds (crossproduct) ratio for a table.
If no RESPONSE statement is specified, PROC CATMOD computes the standard response functions, which contrast the log of each response probability with the log of the probability for the last response category. If there are r response categories, then there are standard response functions. For example, if there are four response categories, using no RESPONSE statement is equivalent to specifying the following:
response 1 0 0 -1, 0 1 0 -1, 0 0 1 -1 log;
This results in three response functions:
If there are only two response levels, the resulting response function would be a logit, which is why the standard response functions are called generalized logits. They are useful in dealing with the log-linear model:
If denotes the matrix in the preceding RESPONSE statement, then because of the restriction that the probabilities sum to 1, it follows that an equivalent model is
But is simply the vector of standard response functions. Thus, fitting a log-linear model on the cell probabilities is equivalent to fitting a linear model on the generalized logits.