Forms a summary accumulating the results of a sequence of REML random models (R.W. Payne).
Options
PRINT = string tokens |
Controls printed output (deviance, aic, bic, sic, dffixed, dfrandom, change, exit); default devi, aic, sic, dfra |
|---|---|
METHOD = string token |
How to accumulate the current analysis (add, printonly, restart); default add |
INCLUDE = string tokens |
Which constants to include that depend only on the fixed model (determinant, pi); default pi |
DMETHOD = string token |
Method to use to calculate log(determinant(X′X)) (choleski, lrv); default chol |
ACCUMULATED = pointer |
Saves the summary |
Parameters
DESCRIPTION = text |
Single-line text to describe the analysis; default lists the random terms added or deleted from the previous model |
|---|---|
SAVE = REML save structure |
Save structure for the REML analysis to put into the summary; default uses the save structure from the most recent REML |
Description
Random models in a REML analysis can be assessed by examining their Akaike or Schwarz (Bayesian) information coefficients or, if one random model is a generalization of another random model, you can look at the change in their deviances. These statistics can be calculated and printed after each analysis using the VAIC procedure. However, making comparisons can be inconvenient if there are many models to compare. Thus this procedure, VRACCUMULATE, allows you to accumulate results from a sequence of models, so that you can view them all at once. You can do this by giving the command
VRACCUMULATE [PRINT=*]
following all except the last analysis. Then, after the last analysis, give another VRACCUMULATE command, but with the PRINT option now set to request the desired output, using the following settings:
deviance |
prints the deviances; |
|---|---|
aic |
prints the Akaike information coefficients; |
bic or sic (synonyms) |
print the Schwarz (Bayesian) information coefficients; |
dffixed |
prints the number of parameters fitted in the fixed models; |
dfrandom |
prints the number of parameters fitted in the random models (and any covariance models); |
change |
prints changes in the deviance and number of random d.f. between successive lines of the summary and their (chi-square) probabilities; and |
exit |
exit codes (from VKEEP) indicating whether each analysis was fitted successfully (the deviance and information coefficients are set to missing values for unsuccessful fits). |
The output indicates any point during the sequence of analyses where the fixed model has changed. It is not valid to compare random models unless one of the models is an extension of the other one, and the fixed model remained unchanged; if VRACCUMULATE detects that a comparison is invalid, the change in deviance is set to a missing value. It also flags any lines where it detects that there have been changes in the variance models (defined by VSTRUCTURE); before you use the change in deviance between these lines, you should check that the variance model defined in one of the lines is an extension of the model defined in the other one.
To print the information without adding another line to the summary, you can set option METHOD=printonly. Setting METHOD=restart clears the existing summary and then adds the current analysis. The default, METHOD=add, continues the existing summary by adding another line.
The deviance provided by REML omits some constants that depend on the fixed model. In fact the full deviance is given by
full-deviance = REML-deviance + (n–p)*log(2π) – log(det(X′X))
where X is the design matrix of the fixed model. Other software systems tend to include the first term, involving π, but omit the log-determinant term which is more time-consuming to calculate. The inclusion of these terms in the calculation is controlled by the INCLUDE option, with settings
determinant |
-log(det(X′X)) |
|---|---|
pi |
+(n-p)*log(2π) |
The DMETHOD option controls how -log(det(X′X)) is calculated when this is included. However, the default is INCLUDE=pi. The INCLUDE option also affects the values of the Akaike or Schwarz (Bayesian) information coefficients, which depend on the deviance; see VAIC for details.
By default, the first line of the summary is labelled by the list of random terms in the model; subsequent lines list the random terms added or deleted from the previous model. Alternatively, you can supply your own labels using the DESCRIPTION parameter.
VRACCUMULATE usually adds a line to the summary for the most recent REML analysis. However, you can use the SAVE parameter to specify the save structure from an earlier analysis.
The ACCUMULATED option allows you to save the summary in a pointer, with elements labelled ‘description’, 'deviance', 'aic', 'sic', 'dffixed', 'dfrandom', 'deviance change', 'd.f. change', 'fixed changed', 'var-mod. changed' and 'exit'. ACCUMULATED['description'] is a text. The other elements are variates. The saved values of the deviances and information coefficients all take account of the settings of the INCLUDE option.
Options: PRINT, METHOD, INCLUDE, DMETHOD, ACCUMULATED.
Parameters: DESCRIPTION, SAVE.
See also
Procedure: VAIC.
Commands for: REML analysis of linear mixed models.
Example
CAPTION 'VRACCUMULATE example'; STYLE=meta
" Examples 2:5.3.7a-b "
" Voltage Regulator Performance
Investigation into sources of variability encountered
during the production of voltage regulators for cars.
(Example S from Applied Statistics Principles and Examples,
D.R.Cox & E.J.Snell, 1981)."
UNITS [NVALUES=256]
FACTOR [LEVELS=4; VALUES=(1...4)64] Teststat
FACTOR [LEVELS=10; LABELS=!T(A,B,C,D,E,F,G,H,J,K);\
VALUES=32(1),16(2),28(3),28(4),16(5),28(6),\
32(7),24(8),24(9),28(10)] Setstat
FACTOR [LEVELS=8; VALUES=4( 1...8, 1,2...4, 1,2...7, 1,2...7,\
1,2...4, 1,2...7, 1,2...8, 1,2...6, 1,2...6, 1,2...7)] Regulatr
READ Voltage
16.5 16.5 16.6 16.6 15.8 16.7 16.2 16.3 16.2 16.5 15.8 16.1
16.3 16.5 16.3 16.6 16.2 16.1 16.3 16.5 16.9 17.0 17.0 17.0
16.0 16.2 16.0 16.0 16.0 16.0 16.1 16.0 16.0 16.1 16.0 16.1
15.4 16.4 16.8 16.7 16.1 16.4 16.3 16.3 15.9 16.1 16.0 16.0
16.0 16.0 15.9 16.3 15.8 16.0 16.3 16.0 15.7 16.2 15.3 15.8
16.2 16.4 16.4 16.6 16.0 16.1 16.0 15.9 16.1 16.1 16.1 16.1
16.1 16.0 16.1 16.0 16.1 16.0 16.0 16.1 16.0 15.9 16.2 16.0
15.7 15.8 15.7 15.7 15.6 16.4 16.1 16.2 16.0 16.2 16.1 16.1
15.7 15.7 15.7 15.7 16.1 16.1 16.1 16.0 15.9 16.0 16.0 16.5
16.1 16.3 16.0 16.0 16.0 16.2 16.0 16.1 16.3 16.5 16.4 16.4
16.1 16.0 16.0 16.2 16.5 16.1 16.5 16.7 16.2 17.0 16.4 16.7
15.8 16.1 16.2 16.2 16.2 16.1 16.4 16.2 16.0 16.2 16.2 16.1
16.0 16.0 16.1 16.0 15.5 15.5 15.3 15.6 16.0 15.6 15.7 16.2
16.0 16.4 16.2 16.2 15.8 16.5 16.2 16.2 15.9 16.1 15.9 16.0
15.9 16.1 15.8 15.7 16.0 16.4 16.0 16.0 16.1 16.2 16.2 16.1
15.5 15.6 15.4 15.8 15.8 16.2 16.0 16.2 16.2 15.4 16.1 16.3
16.1 16.2 16.0 16.1 16.1 16.2 16.3 16.2 16.1 16.1 16.0 16.1
16.2 16.1 15.8 16.0 16.2 15.3 17.8 16.3 16.4 16.7 16.5 16.5
16.2 16.5 16.1 16.1 16.1 16.4 16.1 16.3 16.4 16.3 16.4 16.4
15.9 16.0 15.8 16.1 15.8 15.7 16.7 16.0 16.2 16.2 16.2 16.3
16.2 16.3 15.9 16.3 16.0 16.0 16.0 16.0 16.0 16.4 16.2 16.2
16.0 16.1 16.0 16.1 :
VCOMPONENTS [ABSORB=Setstat] Teststat*(Setstat/Regulatr)
REML [PRINT=*] Voltage
VAIC [PRINT=deviance,aic,bic,dffixed,dfrandom]
" initialize (restart) the memory, and store resuts of first analysis "
VRACCUMULATE [METHOD=restart; PRINT=*] 'Teststat*(Setstat/Regulatr)'
VCOMPONENTS [ABSORB=Setstat] Teststat+(Setstat/Regulatr)
REML [PRINT=*] Voltage
VAIC [PRINT=deviance,aic,bic,dffixed,dfrandom]
VRACCUMULATE [PRINT=*]
VCOMPONENTS [ABSORB=Setstat] Setstat/Regulatr
REML [PRINT=*] Voltage
VAIC [PRINT=deviance,aic,bic,dffixed,dfrandom]
VRACCUMULATE [PRINT=*]
VCOMPONENTS [ABSORB=Setstat] Setstat
REML [PRINT=*] Voltage
VAIC [PRINT=deviance,aic,bic,dffixed,dfrandom]
" print the accumulated results "
VRACCUMULATE [PRINT=deviance,aic,bic,dffixed,dfrandom,change]