Jak wykonać połączenie wewnętrzne w sas (z przykładem)


Aby wykonać sprzężenie wewnętrzne dwóch zestawów danych w SAS-ie, możesz użyć następującej podstawowej składni:

 proc sql ;
    create table final_table as
    select * from data1 as x join data2 as y
    on x.ID = y.ID;
quit ;

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Powiązane: Jak wykonać lewe połączenie w SAS

Przykład: połączenie wewnętrzne w SAS-ie

Załóżmy, że mamy w SAS-ie następujące dwa zestawy danych:

 /*create datasets*/
data data1;
    input team $points;
    datalines ;
Mavs 99
Spurs 93
Rockets 88
Thunder 91
Warriors 104
Cavs 93
Nets 90
Hawks 91
;
run ;

data data2;
    input team $rebounds;
    datalines ;
Mavs 21
Spurs 18
Warriors 27
Hawks 29
Knicks 40
Raptors 30
;
run ;

/*view datasets*/
proc print data =data1;
proc print data =data2; 

Należy zauważyć, że oba zbiory danych mają wspólną zmienną: team .

Zastosujemy następującą składnię, aby wykonać złączenie wewnętrzne i utworzyć nowy zbiór danych zawierający tylko te wiersze, w których zmienna zespołu pojawia się w obu zbiorach danych:

 /*perform inner join*/
proc sql ;
	create table final_table as
	select * from data1 as x join data2 as y
	on x.team = y.team;
quit ;

/*view results of inner join*/
proc print data =final_table; 

Wynikowy zbiór danych zawiera tylko te wiersze, w których zmienna zespołu pojawia się w obu zbiorach danych.

Jeśli odniesiesz się do dwóch poprzednich zbiorów danych, zauważysz, że w obu zbiorach danych pojawiają się tylko cztery drużyny: Mavs, Spurs, Warriors i Hawks.

Ponieważ zdecydowaliśmy się połączyć dwa zbiory danych w zmiennej zespołu , w ostatecznym zbiorze danych pojawią się również cztery zespoły.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w SAS-ie:

Jak normalizować dane w SAS-ie
Jak zamienić znaki w ciągu w SAS-ie
Jak zastąpić brakujące wartości zerem w SAS-ie
Jak usunąć duplikaty w SAS-ie

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *