Das Skript verwendet einen DATA Step, um die Jahre von 2000 bis 2200 zu durchlaufen. Für jedes Jahr versucht es, ein Datum für den 29. Februar zu erstellen. Wenn das resultierende Datum nicht fehlend ist (d.h. der 29. Februar ist ein gültiges Datum für dieses Jahr), wird das Jahr als Schaltjahr betrachtet und dem Ausgabedatensatz 'leap_years' hinzugefügt. Nur die Variable 'year' wird im endgültigen Datensatz beibehalten.
Datenanalyse
Type : CREATION_INTERNE
Die Daten werden vollständig intern durch den DATA Step generiert, ohne Abhängigkeit von bestehenden (SASHELP oder externen) Datensätzen.
1 Codeblock
DATA STEP Data
Erklärung : Dieser Block ist ein DATA Step, der einen neuen Datensatz namens 'leap_years' erstellt. Er initialisiert eine Variable 'date', um Datumswerte zu speichern. Eine 'do'-Schleife durchläuft jedes Jahr von 2000 bis 2200. Innerhalb der Schleife wird die Funktion MDY() verwendet, um ein Datum für den 29. Februar des aktuellen Jahres zu erstellen. Wenn der 29. Februar kein gültiges Datum ist (d.h. das Jahr ist kein Schaltjahr), gibt die Funktion MDY() einen fehlenden Wert zurück. Die Bedingung 'if not missing(date)' filtert diese Fälle heraus und schreibt nur die Schaltjahre über die 'output'-Anweisung in den Ausgabedatensatz. Die Option 'keep=year' stellt sicher, dass nur die Variable 'year' im endgültigen Datensatz beibehalten wird.
Kopiert!
data leap_years(keep=year);
length date 8;
do year=2000 to 2200;
/* MISSING when Feb 29 not a valid date */
date=mdy(2,29,year);
if not missing(date) then
output;
end;
run;
1
DATA leap_years(keep=year);
2
LENGTH date 8;
3
DO year=2000 to 2200;
4
/* MISSING when Feb 29 not a valid date */
5
date=mdy(2,29,year);
6
IF not missing(date) THEN
7
OUTPUT;
8
END;
9
RUN;
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.