COPULA Procedure

FIT Statement

  • FIT type <NAME=name><INIT=(parameter-value-options)> /options;

The FIT statement estimates the parameters for a specified copula type.

type

specifies the type of the copula to be estimated, which is one of the following:

CLAYTON

fits the Clayton copula.

FRANK

fits the Frank copula.

GUMBEL

fits the Gumbel copula.

NORMAL

fits the normal copula.

T

fits the t copula.

INIT=(parameter-value-options)

provides the initial values for the numerical optimization.

[parameter-value-options] specify the input parameters that are used to initialize the specified copula. These options must be appropriate for the type of copula that you specify. You can specify the following options:

CORR=SAS-data-set

specifies the data set that contains the Pearson correlation matrix to use for elliptical copulas. If the correlation matrix is valid but its elements are not submitted in order, then you must provide the variable names in the first column of the matrix, and these names must match the variable names in the VAR statement. For an example of a correlation matrix input in this form, see Output 10.2.1. If the correlation matrix elements are submitted in order, the first column of variable names is not required. You can use this option for t copulas.

DF=value

specifies the degrees of freedom. You can use this option for t copulas.

KENDALL=SAS-data-set

specifies the data set that contains the correlation matrix defined in Kendall’s tau. If the correlation matrix is valid but its elements are not submitted in order, then you must provide the variable names in the first column of the matrix, and these names must match the variable names in the VAR statement. If the correlation matrix elements are submitted in order, the first column of variable names is not required. You can use this option for t copulas.

THETA=value

specifies the parameter value for Archimedean copulas.

For Archimedean copulas, the default initial values of the parameter are computed using the calibration method. The default initial value for the degrees-of-freedom parameter in the t copula is set to 2.0. The following statement shows an initialization for Student’s t copula, where the Kendall’s tau correlation matrix is stored in the corrmat data set and the upper D upper F is set to 2.5:

fit t init=(df=2.5 kendall=corrmat);
NAME=name

specifies an identifier for the fit, which is stored as an ID variable in the OUTCOPULA= data set.

You can specify the following options after a slash (/):

MARGINALS=UNIFORM | EMPIRICAL

specifies the marginal distribution of the individual variables. You can specify the following values:

EMPIRICAL

uses the marginal empirical CDF to transform the data and uses the transformed data to fit the copula.

UNIFORM

uses the input data without transformation to fit the copula.

METHOD=MLE | CAL

specifies the method used to estimate parameters. You can specify the following values:

CAL

specifies the calibration method that uses the correlation matrix (only Kendall’s tau is implemented in this procedure).

MLE

represents canonical maximum likelihood estimation (CMLE) or maximum likelihood estimation (MLE).

For the t copula, if METHOD=CAL, then the correlation matrix is estimated using the calibration method with Kendall’s tau and the degrees of freedom are estimated by the MLE. For the normal copula, only METHOD=MLE is supported and METHOD=CAL is ignored. By default for all copula types, METHOD=MLE.

OUTCOPULA <(KENDALL | SPEARMAN)>=SAS-data-set

specifies the name of the output data set. Each fitted copula is written to the specified SAS-data-set. The data set is not created if this option is not specified.

You can specify one of the following options, which must be appropriate for the type of copula that you specify:

KENDALL

also writes a Kendall correlation matrix to the SAS-data-set.

SPEARMAN

also writes a Spearman correlation matrix to the SAS-data-set.

OUTPSEUDO=SAS-data-set

specifies the output data set for saving the pseudo-samples with uniform marginal distributions. The pseudo-samples are obtained by transforming the individual variables of the original data with the empirical cumulative distribution functions (CDFs). The data set is not created if this option is not specified.

PLOTS<(global-plot-options)> < = (specific-plot-options)>

controls the plots that are produced by the COPULA procedure. By default, PROC COPULA produces a scatter plot matrix for variables (that is, it displays a symmetric matrix plot with the variables that are specified in the VAR statement).

You can specify the following global-plot-options:

NVAR=ALL | n

specifies the maximum number of variables specified in the VAR statement to be displayed in the matrix plot. The NVAR=ALL option uses all variables that are specified in the VAR statement. By default, NVAR=5.

TAIL | CHI

requests that tail dependence plots (chi-plots) be plotted. If you specify this option with the UNPACK option on, PROC COPULA displays a chi-plot for each applicable pair of distinct variables that are specified in the VAR statement. If you specify this option without the UNPACK option, PROC COPULA displays a scatter plot matrix, the lower triangular section shows regular scatter plots between distinct pairs of variables that are specified in the VAR statement, the upper triangular section shows chi-plots for corresponding pairs of variables.

UNPACKPANEL | UNPACK

requests scatter plots for pairs of variables. If you specify this option, PROC COPULA displays a scatter plot for each applicable pair of distinct variables that are specified in the VAR statement.

You can specify the following specific-plot-options:

DATATYPE=ORIGINAL | UNIFORM | BOTH

requests the data type to be plotted. DATATYPE=ORIGINAL presents the data in their original marginal distribution; DATATYPE=UNIFORM shows the transformed data with uniform marginal distribution; and DATATYPE=BOTH plots both the original and uniform data types. If MARGINALS=UNIFORM, then the transformation is omitted and the DATATYPE= option is ignored.

NONE

suppresses all plots.

Printing Options

ITPRINT

prints a summary iteration listing.

NOCORR

suppresses the correlation matrix.

NOPRINT

suppresses all output.

PRINTALL

default option.

Last updated: June 19, 2025