The MCHP SAS MANUAL - Space Saving Suggestions

         


Saving Space In SAS

The following is a list of things to check, or think about when writing SAS programs, especially if you are working on large data sets.

  1. Keep only the variables you need in the data step using the keep option on the set statement.
         data temp ;
             set cpe.hsp9192 (keep=phin91 transact los); 
             .... more code .....
             run;
    
  2. Keep only the variables you need in the output data using a keep, or drop on the data statement.
         data temp(drop=age dx01-dx16) ;
             set cpe.hsp9192 ;
             .... more code ....
             run;
        
  3. Sub-set only the observations you require. Do the largest possible sub-setting of data using a where command on the set statement.
         data temp ;
             set cpe.hsp9192(keep=phin91 transact los 
                             where=(transact='1')) ;
             .... more code .....
             run;
         
  4. Minimize the length of any variables you generate using the length statement.
          data temp ;
             length grouper $1 ;
             set temp ;
             grouper = put(diag,$groupf.) ;
             run;
    
  5. Re-use data set names within the same program, or use proc data sets with the delete command to remove un-used data sets.

  6. On large, multi-variable (20+) data sets use the SAS compress option.

    WARNING: Some times this can create even larger data sets.

  7. Encode variables in their most efficient form. e.g. use a single character variable, and a format for labels.

  8. If necessary compress your data sets with the Unix compress or zip options. It is possible to use unix compressed data sets on the fly from within SAS (75-90% space saved).

The above tips come from:
SAS Programming Tips: A Guide to Efficient SAS Processing.

Contact: Charles Burchill       Telephone: (204) 789-3429

Systems Analyst, Manitoba Centre for Health Policy and Evaluation
Department of Community Health Sciences, University of Manitoba
T155 Old Basic Sci Bldg Winnipeg, Manitoba R3E 0W3      Fax: (204) 789-3910

Last Modified on August 23, 2005