Sas: so führen sie datensätze basierend auf zwei variablen zusammen
Sie können die folgende grundlegende Syntax verwenden, um zwei Datensätze in SAS basierend auf der Übereinstimmung zweier Variablen zusammenzuführen:
data final_data;
merge data1(in=a) data2(in=b);
by ID Store;
if a and b;
run ;
In diesem speziellen Beispiel werden die Datensätze „ data1“ und „data2“ basierend auf den Variablen „ID “ und „ Store “ zusammengeführt und nur die Zeilen zurückgegeben, in denen in beiden Datensätzen ein Wert vorhanden ist.
Das folgende Beispiel zeigt, wie diese Syntax in der Praxis verwendet wird.
Beispiel: Datensätze in SAS basierend auf zwei Variablen zusammenführen
Angenommen, wir haben in SAS den folgenden Datensatz, der Informationen über die Vertriebsmitarbeiter eines Unternehmens enthält:
/*create first dataset*/
data data1;
inputStoreID $;
datalines ;
1A
1B
1 C
2A
2C
3A
3 B
;
run ;
/*view first dataset*/
title "data1";
proc print data = data1;
Und nehmen wir an, wir hätten einen weiteren Datensatz, der Informationen über die von jedem Mitarbeiter in verschiedenen Geschäften getätigten Verkäufe enthält:
/*create second dataset*/
data data2;
input Store ID $Sales;
datalines ;
1 to 22
1 B 25
2 to 40
2 B 24
2 C 29
3 to 12
3 B 15
;
run ;
/*view second dataset*/
title "data2";
proc print data = data2;
Mit der folgenden Merge- Anweisung können wir die beiden Datensätze basierend auf den übereinstimmenden Werten in den Spalten „ID “ und „ Store “ zusammenführen und dann nur die Zeilen zurückgeben, in denen in beiden Spalten ein Wert vorhanden ist:
/*perform merge*/
data final_data;
merge data1(in=a) data2(in=b);
by ID Store;
if a and b;
run ;
/*view results*/
title "final_data";
proc print data =final_data;
Der resultierende Datensatz gibt Zeilen zurück, in denen die Werte der ID- und Store- Spalte übereinstimmen.
Hinweis : Die vollständige Dokumentation für die 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:
SAS: So führen Sie eine Eins-zu-Viele-Zusammenführung durch
SAS: Verwendung von (in=a) in der Merge-Anweisung
SAS: So führen Sie eine Zusammenführung durch, wenn A nicht B ist