The SSM Procedure

COMPONENT Statement

  • COMPONENT name = (var1 var2 ... | number1 number2 ...) * state </ options> ;

  • COMPONENT name = state[ integer ] </ options>;

  • COMPONENT name = ( Variable | Number ) * state[ integer ] </ options>;

The COMPONENT statement specifies a component (a linear combination of state elements), named name. You can use name later as a term in the right-hand side of the MODEL statement, which defines the observation equation. The estimate of name is output to the OUT= data set that is specified in the OUTPUT statement. In addition, you can print the component estimate by using the PRINT= option.

The first form of the COMPONENT statement defines a component as a dot product of a state subsection state and a row vector (var1 var2 ...). The value of state can be the name of a state subsection that is defined by using a STATE statement elsewhere in the program, or it can be the name of the state that is associated with a trend component defined by using a TREND statement elsewhere in the program (see the section TREND Statement for more information about the naming of the state that is associated with a trend component). The row vector (var1 var2 ...), which can be either a list of numbers or a list of variables, must be of the same dimension as the actual dimension of the state subsection. The dot product form—also called the explicit dot product form—of the component specification is unambiguous; however, it requires detailed knowledge of the state vector underlying the state specification. Suppose that mystate is a two-dimensional state defined by a STATE statement elsewhere in the program and that X1 and X2 are (numeric) predictor variables. The following are valid examples of the dot product form of the COMPONENT statement:

 component c1 = (x1 x2) * mystate;
 component c2 = (1 1) * mystate;

The second and the third forms of the COMPONENT statement are a shortened version of the first form. The second form defines the component as a particular element of state—for example, state[3] defines the component as the third element of state. The specified integer must lie between 1 and dim, the nominal dimension of state. The second form of component specification has another important use when the STATE statement that defines state uses the TYPE= option to set its type or when state is associated with a trend component. In these cases, the second form of the component specification assumes additional meaning when the nominal state dimension and the actual state dimensions differ (specifically the state types LL, SEASON, CYCLE, and VARMA and the states associated with all the trend types). For example, if state is a three-dimensional seasonal component, state[2] signifies an appropriate linear combination of state that results in the second of the three seasonals that constitute the three-dimensional seasonal. Similar interpretation holds for the CYCLE type. See the sections Multivariate Season and Predefined Structural Models for more information. The third form extends the second form by permitting multiplication by a variable or a number.

Note: A component that is based on a state associated with a trend component cannot be used as a right-hand side term in any MODEL statement. That is, it is defined purely for output purposes (either printed or output to a data set). However, it can be used as a term in the expression that is specified in an EVAL statement to build more complex linear combinations for output.

You can specify the following options to print the filtered or smoothed estimate of the component:

PRINT=FILTER | SMOOTH
PRINT=(<FILTER> <SMOOTH>)

requests printing of the filtered or smoothed estimate of the specified component.