Appendix 1. Sample SAS Program


4
5 /* APP14.sas */;
6
7 OPTIONS LS=132 PS=79;
8
9
10 /* Program Name: SAMPLE.SAS */
11
12 /* Description: This job provides an example of how to get job info */
13 /* from Round 1 or Round 2 in the FY2013 JOBS file when */
14 /* a Round 3 current main job in the FY2014 JOBS file */
15 /* is a continuation job. */
16
17 /* This example creates a dataset of Round 3 continuation */
18 /* JOBS records with a SICKPAYX variable copied from the */
19 /* Round 1 or Round 2 newly reported job. */ ;
20
21
22
23 libname jobs13 “c:\mydata\jobs13”;
24 libname jobs14 “c:\mydata\jobs14”;
25
26 /* Select continuing Panel 18, Round 3 Current Main JOBS */
27 /* (SUBTYPE=1, STILLAT=1) from the FY 2014 JOBS file and */
28 /* print selected variables from the first 20 observations */;
29
30 data j14r3;
31 set jobs14.jobs14;
32 if panel=18
33 and rn=3
34 and subtype=1
35 and stillat=1
36 and sickpay=-1;
37 run;
NOTE: There were 58697 observations read from the data set JOBS14.JOBS14.
NOTE: The data set WORK.J14R3 has 6178 observations and 77 variables.
NOTE: Compressing data set WORK.J14R3 decreased size by 7.08 percent.
Compressed is 105 pages; un-compressed would require 113 pages.
NOTE: DATA statement used (Total process time):
real time 1.07 seconds
cpu time 0.14 seconds

38
39 proc print data=j14r3 (obs=20);
40 title ‘Print Sample of Continuation Round 3 Records’;
41 var dupersid panel rn jobsn subtype stillat sickpay;
42 run;
NOTE: There were 20 observations read from the data set WORK.J14R3.
NOTE: The PROCEDURE PRINT printed page 1.
NOTE: PROCEDURE PRINT used (Total process time):
real time 0.04 seconds
cpu time 0.04 seconds

43
44
45 /* Select newly reported Panel 18 Current Main JOBS records from */
46 /* the FY 2013 JOBS file and print selected variables from the */
47 /* first 20 observations. */;
48
49 data j1312;
50 set jobs13.jobs13;
51 if subtype=1
52 and stillat=-1
53 and panel=18
54 and rn in (1,2);
55 run;
NOTE: There were 59879 observations read from the data set JOBS13.JOBS13.
NOTE: The data set WORK.J1312 has 8672 observations and 77 variables.
NOTE: Compressing data set WORK.J1312 decreased size by 7.55 percent.
Compressed is 147 pages; un-compressed would require 159 pages.
NOTE: DATA statement used (Total process time):
real time 0.71 seconds
cpu time 0.04 seconds

56
57 proc print data=j1312 (obs=20);
58 title ‘Print Sample of Newly Reported Round 1 and Round 2 Records’;
59 var dupersid panel rn jobsn subtype stillat sickpay;
60 run;
NOTE: There were 20 observations read from the data set WORK.J1312.
NOTE: The PROCEDURE PRINT printed page 2.
NOTE: PROCEDURE PRINT used (Total process time):
real time 0.00 seconds
cpu time 0.00 seconds

61
62 proc freq data=j1312;
63 tables sickpay/list missing;
64 title ‘Sickpay Value of FY2013 Round 1 and Round 2 Newly Reported CMJs’;
65 run;
NOTE: There were 8672 observations read from the data set WORK.J1312.
NOTE: The PROCEDURE FREQ printed page 3.
NOTE: PROCEDURE FREQ used (Total process time):
real time 0.13 seconds
cpu time 0.01 seconds

66
67
68 /* Prepare FY13 and FY14 data for merge */;
69
70 proc sort data=j14r3;
71 by dupersid jobsn;
72 run;
NOTE: There were 6178 observations read from the data set WORK.J14R3.
NOTE: SAS sort was used.
NOTE: The data set WORK.J14R3 has 6178 observations and 77 variables.
NOTE: Compressing data set WORK.J14R3 decreased size by 7.08 percent.
Compressed is 105 pages; un-compressed would require 113 pages.
NOTE: PROCEDURE SORT used (Total process time):
real time 0.10 seconds
cpu time 0.03 seconds

73
74 proc sort data=j1312;
75 by dupersid jobsn;
76 run;
NOTE: There were 8672 observations read from the data set WORK.J1312.
NOTE: SAS sort was used.
NOTE: The data set WORK.J1312 has 8672 observations and 77 variables.
NOTE: Compressing data set WORK.J1312 decreased size by 7.55 percent.
Compressed is 147 pages; un-compressed would require 159 pages.
NOTE: PROCEDURE SORT used (Total process time):
real time 0.03 seconds
cpu time 0.03 seconds

77
78
79 /* Create a dataset (J14R3F) that includes all variables */
80 /* for the continuation Round 3 Current Main JOBS and create */
81 /* the new variable SICKPAYX by copying SICKPAY from the */
82 /* corresponding Round 1 or Round 2 newly reported job record. */;
83
84 data j14r3f;
85 merge j14r3 (in=a) j1312 (in=b keep = dupersid jobsn sickpay
86 rename=(sickpay=SICKPAYX));
87 by dupersid jobsn;
88 if a and b;
89 run;
NOTE: There were 6178 observations read from the data set WORK.J14R3.
NOTE: There were 8672 observations read from the data set WORK.J1312.
NOTE: The data set WORK.J14R3F has 6177 observations and 78 variables.
NOTE: Compressing data set WORK.J14R3F decreased size by 5.31 percent.
Compressed is 107 pages; un-compressed would require 113 pages.
NOTE: DATA statement used (Total process time):
real time 0.03 seconds
cpu time 0.03 seconds

90
91 proc freq data=j14r3f;
92 tables sickpay*sickpayx/list missing;
93 title1 ‘Diagnostic Post-Merge - Sickpay * Sickpayx’;
94 title2 ‘Round 3 Continuation Current Main Jobs Only’;
95 run;
NOTE: There were 6177 observations read from the data set WORK.J14R3F.
NOTE: The PROCEDURE FREQ printed page 4.
NOTE: PROCEDURE FREQ used (Total process time):
real time 0.01 seconds
cpu time 0.01 seconds

96
97 OPTIONS LS=132 PS=79;
98
99

Return to Top

Print Sample of Continuation Round 3 Records

Obs DUPERSID PANEL RN JOBSN SUBTYPE STILLAT SICKPAY
1 40001101 18 3 1 1 1 -1
2 40001102 18 3 1 1 1 -1
3 40004101 18 3 1 1 1 -1
4 40005101 18 3 1 1 1 -1
5 40009101 18 3 1 1 1 -1
6 40010101 18 3 1 1 1 -1
7 40010102 18 3 1 1 1 -1
8 40011102 18 3 1 1 1 -1
9 40012104 18 3 1 1 1 -1
10 40015101 18 3 1 1 1 -1
11 40017101 18 3 1 1 1 -1
12 40017102 18 3 1 1 1 -1
13 40019101 18 3 2 1 1 -1
14 40019104 18 3 1 1 1 -1
15 40020101 18 3 1 1 1 -1
16 40021103 18 3 1 1 1 -1
17 40022103 18 3 3 1 1 -1
18 40023101 18 3 3 1 1 -1
19 40025102 18 3 1 1 1 -1
20 40026101 18 3 1 1 1 -1

Return to Top

Print Sample of Newly Reported Round 1 and Round 2 Records

Obs DUPERSID PANEL RN JOBSN SUBTYPE STILLAT SICKPAY
1 40001101 18 1 1 1 -1 -1
2 40001102 18 1 1 1 -1 1
3 40004101 18 1 1 1 -1 -1
4 40005101 18 1 1 1 -1 2
5 40006101 18 1 1 1 -1 1
6 40006103 18 1 1 1 -1 1
7 40009101 18 1 1 1 -1 1
8 40010101 18 1 1 1 -1 1
9 40010102 18 1 1 1 -1 1
10 40011101 18 1 1 1 -1 2
11 40011102 18 1 1 1 -1 1
12 40011103 18 1 1 1 -1 2
13 40012104 18 1 1 1 -1 1
14 40014102 18 1 1 1 -1 2
15 40015101 18 1 1 1 -1 -1
16 40015102 18 1 1 1 -1 -1
17 40017101 18 1 1 1 -1 1
18 40017102 18 1 1 1 -1 1
19 40019101 18 1 2 1 -1 -1
20 40019104 18 2 1 1 -1 1

Return to Top

Sickpay Value of FY2013 Round 1 and Round 2 Newly Reported CMJs

DOES PERSON HAVE PAID SICK LEAVE

SICKPAY Frequency Percent Cumulative Frequency Cumulative Percent
-9 10 0.12 10 0.12
-8 262 3.02 272 3.14
-7 15 0.17 287 3.31
-1 948 10.93 1235 14.24
1 3904 45.02 5139 59.26
2 3533 40.74 8672 100.00

Return to Top

Diagnostic Post-Merge - Sickpay * Sickpayx
Round 3 Continuation Current Main Jobs Only


SICKPAY SICKPAYX Frequency Percent Cumulative Frequency Cumulative Percent
-1 -9 4 0.06 4 0.06
-1 -8 152 2.46 156 2.53
-1 -7 10 0.16 166 2.69
-1 -1 768 12.43 934 15.12
-1 1 3103 50.23 4037 65.36
-1 2 2140 34.64 6177 100.00

Return to Top