Sas: so führen sie eine zusammenführung durch, wenn a nicht b ist


Sie können die folgende grundlegende Syntax verwenden, um zwei Datensätze in SAS zusammenzuführen und nur die Zeilen zurückzugeben, für die im ersten Datensatz und nicht im zweiten ein Wert vorhanden ist:

 data final_data;
  merge data1(in=a) data2(in=b);
  byID ;
  if a and not b;
run ;

In diesem speziellen Beispiel werden die Datensätze „data1“ und „data2“ zusammengeführt und nur Zeilen zurückgegeben, in denen ein Wert in „data1“ und nicht in „data2“ vorhanden ist.

Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.

Beispiel: Zwei Datensätze in SAS mit If A Not B zusammenführen

Angenommen, wir haben in SAS die folgenden zwei Datensätze, die Informationen über die Vertriebsmitarbeiter eines Unternehmens enthalten:

 /*create first dataset*/
data data1;
    inputIDGender $;
    datalines ;
1 Male
2 Male
3 Female
4 Male
5 Female
;
run ;

title "data1";
proc print data = data1;

/*create second dataset*/
data data2;
    input IDSales;
    datalines ;
1 22
2 15
4 29
6 31
7 20
8 13
;
run ;

title "data2";
proc print data = data2; 

Wenn wir die folgende Merge- Anweisung verwenden, um die beiden Datensätze basierend auf dem Wert der ID- Spalte zusammenzuführen, werden alle Zeilen aus beiden Datensätzen zurückgegeben:

 /*perform merge*/
data final_data;
  merge data1 data2;
  byID ;
run ;

/*view results*/
title "final_data";
proc print data =final_data;

Allerdings können wir IN- Anweisungen verwenden, um nur Zeilen zurückzugeben, in denen im ersten Datensatz ein Wert vorhanden ist, nicht jedoch im zweiten Datensatz:

 data final_data;
  merge data1(in=a) data2(in=b);
  byID ;
  if a and not b;
run ;

/*view results*/
title "final_data";
proc print data =final_data;

Beachten Sie, dass nur Zeilen zurückgegeben werden, für die im ersten Datensatz und nicht im zweiten Datensatz ein Wert vorhanden ist.

Hinweis : Die vollständige Dokumentation zur SAS- Merge -Anweisung finden Sie hier .

Zusätzliche Ressourcen

In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in SAS ausführen:

So führen Sie einen Left Join in SAS durch
So führen Sie einen Inner Join in SAS durch
So führen Sie einen externen Join in SAS durch

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert