Publié le :
ETL CREATION_INTERNE

Détection des Années Bissextiles

Ce code est également disponible en : Deutsch English Español
En attente de validation
Le script utilise une étape DATA pour itérer sur les années de 2000 à 2200. Pour chaque année, il tente de construire une date pour le 29 février. Si la date résultante n'est pas manquante (c'est-à-dire que le 29 février est une date valide pour cette année), alors l'année est considérée comme bissextile et est ajoutée au jeu de données de sortie 'leap_years'. Seule la variable 'year' est conservée dans le jeu de données final.
Analyse des données

Type : CREATION_INTERNE


Les données sont entièrement générées en interne par l'étape DATA, sans dépendance à des jeux de données existants (SASHELP ou externes).

1 Bloc de code
DATA STEP Data
Explication :
Ce bloc est une étape DATA qui crée un nouveau jeu de données nommé 'leap_years'. Il initialise une variable 'date' pour stocker les valeurs de date. Une boucle 'do' itère sur chaque année de 2000 à 2200. À l'intérieur de la boucle, la fonction MDY() est utilisée pour tenter de créer une date pour le 29 février de l'année courante. Si le 29 février n'est pas une date valide (c'est-à-dire que l'année n'est pas bissextile), la fonction MDY() retourne une valeur manquante. La condition 'if not missing(date)' filtre ces cas, n'écrivant que les années bissextiles dans le jeu de données de sortie via l'instruction 'output'. L'option 'keep=year' garantit que seule la variable 'year' est conservée dans le jeu de données final.
Copié !
1DATA 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;
9RUN;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.