Anda di halaman 1dari 5

Example 5: Comparing Observations with an ID Variable

Procedure features:
ID statement
In this example, PROC COMPARE compares only the observations that have
matching values for the ID variable
Program

libname proclib 'SAS-library';

options nodate pageno=1 linesize=80 pagesize=40;

data proclib.emp95;
input #1 idnum $4. @ name $15.
#! address $4!.
#" salar# .;
datalines;
!"88 $ames %c&midt
100 'pt. ( )lount %t. %* +aleig& ,( !-9"
9!100
!45- .red *illiams
99 *est /ane 0arner ,( !-509
""190
... more data lines...
"888 1im %iu
5! 2agnolia )l3d %out&east (ar# ,( !-51"
--558
;
data proclib.emp9;
input #1 idnum $4. @ name $15.
#! address $4!.
#" salar# .;
datalines;
!"88 $ames %c&midt
100 'pt. ( )lount %t. %* +aleig& ,( !-9"
9!100
!45- .red *illiams
99 *est /ane 0arner ,( !-509
""190
...more data lines...
544 +oger 2onda#
"004 (repe 2#rtle (ourt +aleig& ,( !-04
4-00-
;

proc sort data=proclib.emp95 out=emp954b#idnum;
b# idnum;
run;
proc sort data=proclib.emp9 out=emp94b#idnum;
b# idnum;
run;

proc compare base=emp954b#idnum compare=emp94b#idnum;
id idnum;
title '(omparing 5bser3ations t&at 6a3e 2atc&ing
78,92s';
run;
Output: isting

(omparing 5bser3ations t&at 6a3e
2atc&ing 78,92s 1
(52:'+; :rocedure
(omparison o< *5+1.;2:954)=78,92 >it&
*5+1.;2:94)=78,92
?2et&od=;@'(AB
8ata %et %ummar#
8ataset (reated
2odi<ied ,Car ,5bs
*5+1.;2:954)=78,92 1"2'=98D1D0"D"
1"2'=98D1D0"D" 4 10
*5+1.;2:94)=78,92 1"2'=98D1D0"D"
1"2'=98D1D0"D" 4 1!
Cariables %ummar#
,umber o< Cariables in (ommonD 4.
,umber o< 78 CariablesD 1.
5bser3ation %ummar#
5bser3ation )ase (ompare 78
.irst 5bs 1 1
idnum=098-
.irst 9neEual 1 1
idnum=098-
/ast 9neEual 10 1!
idnum=985-
/ast 5bs 10 1!
idnum=985-
,umber o< 5bser3ations in (ommonD 10.
,umber o< 5bser3ations in *5+1.;2:94)=78,92 but not
in *5+1.;2:954)=78,92D !.
Aotal ,umber o< 5bser3ations +ead <rom
*5+1.;2:954)=78,92D 10.
Aotal ,umber o< 5bser3ations +ead <rom
*5+1.;2:94)=78,92D 1!.
,umber o< 5bser3ations >it& %ome (ompared Cariables
9neEualD 5.
,umber o< 5bser3ations >it& 'll (ompared Cariables
;EualD 5.
(omparing 5bser3ations t&at 6a3e
2atc&ing 78,92s !
(52:'+; :rocedure
(omparison o< *5+1.;2:954)=78,92 >it&
*5+1.;2:94)=78,92
?2et&od=;@'(AB
Calues (omparison %ummar#
,umber o< Cariables (ompared >it& 'll
5bser3ations ;EualD 1.
,umber o< Cariables (ompared >it& %ome
5bser3ations 9neEualD !.
Aotal ,umber o< Calues >&ic& (ompare 9neEualD
8.
2aFimum 8i<<erenceD !400.
Cariables >it& 9neEual Calues
Cariable A#pe /en ,di<
2aF8i<
address (6'+ 4! 4
salar# ,92 8 4
!400
Calue (omparison +esults <or
Cariables

444444444444444444444444444444444444444444444444444444
4
GG )ase Calue (ompare
Calue
idnum GG address address
44444 GG 4444444444444444444H
4444444444444444444H
GG
098- GG !"44 :ersimmons )ran !"44
:ersimmons )ran
!-- GG 1!988 *ellington .ar 1!988
*ellington .ar
"888 GG 5! 2agnolia )l3d % 5!
2agnolia )l3d %
985- GG 1000 Aa<t '3e. 2orri 100 Aa<t
'3e. 2orris

444444444444444444444444444444444444444444444444444444
4
(omparing 5bser3ations t&at 6a3e
2atc&ing 78,92s "
(52:'+; :rocedure
(omparison o< *5+1.;2:954)=78,92 >it&
*5+1.;2:94)=78,92
?2et&od=;@'(AB
Calue (omparison +esults <or
Cariables

444444444444444444444444444444444444444444444444444444
4
GG )ase (ompare
idnum GG salar# salar#
8i<<. I 8i<<
44444 GG 444444444 444444444
444444444 444444444
GG
098- GG 44010 45110
1100 !.4994
"!8 GG 8--"4 898"4
!100 !."9"
"888 GG --558 -9958
!400 ".0945
985- GG "8-5 4045
1-00 4."84

444444444444444444444444444444444444444444444444444444
4

Anda mungkin juga menyukai