So verwenden sie first. endlich. variablen in sas
Sie können FIRST verwenden. und LETZT. in SAS, um die ersten Arbeiten und letzten Beobachtungen nach Gruppe in einem SAS-Datensatz zu identifizieren.
Hier ist eine Zusammenfassung dessen, was jede Funktion tut:
- FIRST.variable_name weist der ersten Beobachtung in einer Gruppe den Wert 1 und allen anderen Beobachtungen in der Gruppe den Wert 0 zu.
- LAST.variable_name weist der letzten Beobachtung in einer Gruppe den Wert 1 und allen anderen Beobachtungen in der Gruppe den Wert 0 zu.
Die folgenden Beispiele zeigen, wie jede Funktion in der Praxis mit dem folgenden Datensatz in SAS verwendet wird:
/*create dataset*/
data my_data;
input team $pointsrebounds;
datalines ;
Mavs 29 10
Mavs 13 6
Mavs 22 5
Mavs 20 9
Spurs 13 9
Spurs 15 10
Spurs 33 8
Spurs 27 11
Rockets 25 8
Rockets 14 4
Rockets 16 7
Rockets 12 4
;
run ;
/*view dataset*/
proc print data =my_data;
Beispiel 1: Verwendung von FIRST. im SAS
Wir können ZUERST Folgendes verwenden. Funktion in SAS, um der ersten Beobachtung für jedes Team im Datensatz einen Wert von 1 zuzuweisen:
/*sort dataset by team*/
proc sort data =my_data;
by team;
run ;
/*create new dataset that labels first row for each team*/
datafirst_team ;
set my_data;
by team;
first_team=first.team;
run ;
/*view dataset*/
proc print data =first_team;
Beachten Sie, dass die Spalte „first_team“ die erste Beobachtung jedes Teams auf 1 setzt. Allen anderen Werten wird der Wert 0 zugewiesen.
Sie können auch den folgenden Code verwenden, um einen neuen Datensatz zu erstellen, der nur die erste Beobachtung jedes Teams enthält:
/*sort dataset by team*/
proc sort data =my_data;
by team;
run ;
/*create new dataset only contains first row for each team*/
data first_team;
set my_data;
by team;
if first.team;
run ;
/*view dataset*/
proc print data =first_team;
Beachten Sie, dass der Datensatz nur die erste Beobachtung jedes Teams enthält.
Beispiel 2: Verwendung von LAST. im SAS
Wir können das folgende LAST verwenden. Funktion in SAS, um der ersten Beobachtung für jedes Team im Datensatz einen Wert von 1 zuzuweisen:
/*sort dataset by team*/
proc sort data =my_data;
by team;
run ;
/*create new dataset that labels last row for each team*/
data last_team;
set my_data;
by team;
last_team=last.team;
run ;
/*view dataset*/
proc print data =last_team;
Beachten Sie, dass die Spalte last_team die letzte Beobachtung jedes Teams auf 1 setzt. Allen anderen Werten wird der Wert 0 zugewiesen.
Sie können auch den folgenden Code verwenden, um einen neuen Datensatz zu erstellen, der nur die letzte Beobachtung jedes Teams enthält:
/*sort dataset by team*/
proc sort data =my_data;
by team;
run ;
/*create new dataset only contains last row for each team*/
data last_team;
set my_data;
by team;
if last.team;
run ;
/*view dataset*/
proc print data =last_team;
Beachten Sie, dass der Datensatz nur die letzte Beobachtung jedes Teams enthält.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie Sie andere häufige Aufgaben in SAS ausführen:
So ordnen Sie Variablen in SAS neu an
So kennzeichnen Sie Variablen in SAS
So benennen Sie Variablen in SAS um