Previous Page | Next Page

The ENTROPY Procedure

Example 12.4 Use of the PDATA= Option

It is sometimes useful to specify priors and supports by using the PDATA= option. This example illustrates how to create a PDATA= data set which contains the priors and support points for use in a subsequent PROC ENTROPY step. In order to have a model to estimate in PROC ENTROPY, you must first have data to analyze. The following DATA step generates the data used in this analysis:

   title "Using a PDATA= data set";
   data a;
      retain seed1 55371 seed2 97335;
      array x[4];
      do t = 1 to 100;
         ys = -5;
         do k = 1 to 4;
            x[k] = rannor( seed1 + k  )  ;
            ys = ys + x[k] * k;
         end;
         ys = ys + rannor( seed2 );
         output;
       end;
   run;

Next you fit this data with some arbitrary parameter support points and priors by using the following PROC ENTROPY statements:

   proc entropy data = a gme primal;
      priors          x1  -10(2) 30(1)
                      x2  -20(3) 30(2)
                      x3  -15(4) 30(4)
                      x4  -25(3) 30(2)
               intercept  -13(4) 30(2) ;
      model ys = x1 x2 x3 x4 / esupports=(-25 0 25);
   run;

These statements produce the output shown in Output 12.4.1.

Output 12.4.1 Output From PROC ENTROPY
Using a PDATA= data set

The ENTROPY Procedure

GME Variable Estimates
Variable Estimate Approx Std Err t Value Approx
Pr > |t|
x1 1.195688 0.1078 11.09 <.0001
x2 1.844903 0.1018 18.12 <.0001
x3 3.268396 0.1136 28.77 <.0001
x4 3.908194 0.0934 41.83 <.0001
intercept -4.94319 0.1005 -49.21 <.0001

You can estimate the same model by first creating a PDATA= data set, which includes the same information as the PRIORS statement in the preceding PROC ENTROPY step.


A data set that defines the supports and priors for the model parameters is shown in the following statements:

   data test;
      length Variable $ 12 Equation $ 12;
      input Variable $ Equation $ Nsupport Support Prior ;
   datalines;
        Intercept   .  2 -13 0.66667
        Intercept   .  2  30 0.33333
               x1   .  2 -10 0.66667
               x1   .  2  30 0.33333
               x2   .  2 -20 0.60000
               x2   .  2  30 0.40000
               x3   .  2 -15 0.50000
               x3   .  2  30 0.50000
               x4   .  2 -25 0.60000
               x4   .  2  30 0.40000
   ;

The following statements reestimate the model by using these support points.

   proc entropy data=a gme primal pdata=test;
      model ys = x1 x2 x3 x4 / esupports=(-25 0 25);
   run;

These statements produce the output shown in Output 12.4.2.

Output 12.4.2 Output From PROC ENTROPY with PDATA= option
Using a PDATA= data set

The ENTROPY Procedure

GME Variable Estimates
Variable Estimate Approx Std Err t Value Approx
Pr > |t|
x1 1.195686 0.1078 11.09 <.0001
x2 1.844902 0.1018 18.12 <.0001
x3 3.268395 0.1136 28.77 <.0001
x4 3.908194 0.0934 41.83 <.0001
Intercept -4.94319 0.1005 -49.21 <.0001

These results are identical to the ones produced by the previous PROC ENTROPY step.


Note: This procedure is experimental.

Previous Page | Next Page | Top of Page