Veröffentlicht am :
Datenmanagement INTERNE_ERSTELLUNG

Permanente SAS-Formate

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Zusätzlich zu benutzerdefinierten Formaten bietet SAS© eine Vielzahl vordefinierter Formate an, die auf Daten in der SAS© Cloud Analytic Services (CAS)-Umgebung angewendet werden können. Diese Formate ermöglichen die Steuerung der Art und Weise, wie Datenwerte gelesen, gespeichert oder angezeigt werden, wodurch die Lesbarkeit und Interpretation der Ergebnisse verbessert wird. Die Kompatibilität mit CAS stellt sicher, dass diese Formate mit verteilten In-Memory-Tabellen verwendet werden können, was die Analyse und Berichterstellung großer Datensätze erleichtert.
Datenanalyse

Type : INTERNE_ERSTELLUNG


Die Beispiele verwenden generierte Daten (Datalines), um ihre Autonomie und Reproduzierbarkeit zu gewährleisten.

1 Codeblock
DATA STEP Data
Erklärung :
Dieses einfache Beispiel erstellt eine SAS-Tabelle 'commandes' und wendet das Format DATE9. auf die Variable 'Date_Commande' an, um Daten im Format TTMMMJJJJ anzuzeigen. Die Daten werden zur Reproduzierbarkeit direkt im DATA Step erstellt.
Kopiert!
1DATA work.commandes;
2 INPUT ID_Commande Date_Commande:MMDDYY10. Montant;
3 FORMAT Date_Commande DATE9.;
4 DATALINES;
5 101 01/15/2023 150.75
6 102 02/20/2023 200.00
7 103 03/10/2023 50.25
8 104 04/05/2023 300.50
9 ;
10RUN;
11 
12PROC PRINT DATA=work.commandes; TITLE 'Commandes avec format de date basique'; RUN;
2 Codeblock
DATA STEP / PROC PRINT Data
Erklärung :
Dieses zweite Beispiel veranschaulicht die Verwendung von Währungsformaten (DOLLARx.y) und Tausendertrennzeichen (COMMAx.), um die Darstellung von Finanzdaten und Mengen zu verbessern. Es berechnet außerdem einen 'Prix_Total' in einem DATA Step.
Kopiert!
1DATA work.produits;
2 INPUT Code_Produit $ Prix_Unitaire Quantite;
3 Prix_Total = Prix_Unitaire * Quantite;
4 FORMAT Prix_Unitaire DOLLAR8.2 Prix_Total DOLLAR10.2 Quantite COMMA8.;
5 DATALINES;
6 A101 12.99 1000
7 B202 5.50 2500
8 C303 25.00 500
9 D404 1.25 10000
10 ;
11RUN;
12 
13PROC PRINT DATA=work.produits; TITLE 'Produits avec formats monétaires et décimaux'; RUN;
3 Codeblock
DATA STEP / PROC FORMAT / PROC CAS Data
Erklärung :
Dieses Beispiel kombiniert die Erstellung eines benutzerdefinierten Formats (STATFMT.) mit der Verwendung von SAS Cloud Analytic Services (CAS). Es lädt zunächst Kundendaten in eine CAS-Tabelle und wendet dann das benutzerdefinierte Format auf die Variable 'Statut_Anciennete' an. Eine neue Variable 'Cat_CA' wird basierend auf dem Umsatz erstellt, was eine bedingte Logik und die Anwendung eines weiteren Formats demonstriert. Die formatierte Tabelle wird in CAS hochgestuft, wodurch die Formate für verteilte Analysen verfügbar werden.
Kopiert!
1LIBNAME mycas CAS; /* Assurez-vous d'avoir une session CAS active */
2 
3DATA work.clients_temp;
4 INPUT ID_Client $ Statut_Anciennete $ Chiffre_Affaires;
5 DATALINES;
6 C001 Gold 15000
7 C002 Silver 5000
8 C003 Bronze 1000
9 C004 Gold 25000
10 C005 Silver 7500
11 ;
12RUN;
13 
14/* Charger la table dans CAS */
15PROC CASUTIL SESSREF=mycas;
16 LOAD DATA=work.clients_temp OUTFATABLE=mycas.clients_cas REPLACE;
17RUN;
18 
19/* Définir un format personnalisé */
20PROC FORMAT;
21 VALUE $STATFMT
22 'Gold'='Client Premium'
23 'Silver'='Client Fidèle'
24 'Bronze'='Nouveau Client'
25 OTHER = 'Non classifié';
26RUN;
27 
28DATA mycas.clients_formated_cas(promote=yes); /* Créer une nouvelle table CAS avec le format appliqué */
29 SET mycas.clients_cas;
30 FORMAT Statut_Anciennete $STATFMT.;
31 IF Chiffre_Affaires >= 10000 THEN Cat_CA = 'Élevé';
32 ELSE IF Chiffre_Affaires >= 5000 THEN Cat_CA = 'Moyen';
33 ELSE Cat_CA = 'Faible';
34 FORMAT Cat_CA $10.;
35RUN;
36 
37PROC CAS SESSREF=mycas;
38 TABLE.FETCH / TABLE={NAME='clients_formated_cas'};
39RUN;
4 Codeblock
DATA STEP / PROC CAS Data
Erklärung :
Dieses Beispiel hebt die Integration von Formaten in einen Viya/CAS-Workflow für numerische Daten hervor. Es verwendet komplexe Formate wie DATEAMPMx. und COMMAXx.y zur Visualisierung. Darüber hinaus simuliert es eine ressourcenintensive Berechnungsoperation ('Valeur_Calculee'), die von der verteilten Rechenleistung von CAS profitieren würde, und wendet ein Währungsformat EUROx.y auf das Ergebnis an. Die Tabelle wird dann hochgestuft und die Inhalte werden über eine CAS-Aktion angezeigt, was die Anwendung der Formate in einer verteilten Umgebung bestätigt.
Kopiert!
1LIBNAME mycas CAS; /* Assurez-vous d'avoir une session CAS active */
2 
3DATA work.performances_temp;
4 INPUT Identifiant Date_Mesure:DATE9. Valeur_Brute;
5 DATALINES;
6 S1 01JAN2023 1234567.89
7 S2 15MAR2023 98765.432
8 S3 01JUN2023 123.456
9 S4 20SEP2023 12345.6789
10 ;
11RUN;
12 
13/* Charger la table dans CAS */
14PROC CASUTIL SESSREF=mycas;
15 LOAD DATA=work.performances_temp OUTFATABLE=mycas.performances_cas REPLACE;
16RUN;
17 
18/* Appliquer des formats complexes pour l'affichage dans CAS */
19DATA mycas.performances_formated_cas(promote=yes);
20 SET mycas.performances_cas;
21 FORMAT Date_Mesure DATEAMPM19. Valeur_Brute COMMAX12.4;
22 /* Simulation d'une opération complexe pouvant bénéficier de CAS */
23 Valeur_Calculee = Valeur_Brute * 1.05 / 0.95;
24 FORMAT Valeur_Calculee EURO12.2;
25RUN;
26 
27PROC CAS SESSREF=mycas;
28 TABLE.CONTENTS / TABLE={NAME='performances_formated_cas'};
29 TABLE.FETCH / TABLE={NAME='performances_formated_cas'};
30RUN;
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.
Urheberrechtsinformationen : Copyright © SAS Institute Inc. All Rights Reserved.