Publicado el :
Gestión de datos CREATION_INTERNE

Formatos permanentes proporcionados por SAS

Este código también está disponible en: Deutsch English Français
En espera de validación
Además de los formatos definidos por el usuario, SAS© ofrece una variedad de formatos predefinidos que se pueden aplicar a los datos en el entorno de SAS© Cloud Analytic Services (CAS). Estos formatos permiten controlar la forma en que se leen, almacenan o muestran los valores de los datos, mejorando así la legibilidad e interpretación de los resultados. La compatibilidad con CAS garantiza que estos formatos se pueden utilizar con tablas en memoria distribuida, lo que facilita el análisis y la elaboración de informes sobre grandes conjuntos de datos.
Análisis de datos

Type : CREATION_INTERNE


Los ejemplos utilizan datos generados (datalines) para asegurar su autonomía y reproducibilidad.

1 Bloque de código
DATA STEP Data
Explicación :
Este ejemplo simple crea una tabla SAS 'commandes' y aplica el formato DATE9. a la variable 'Date_Commande' para mostrar las fechas en formato DDMMMAAAA. Los datos se crean directamente en el DATA step para la reproducibilidad.
¡Copiado!
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 Bloque de código
DATA STEP / PROC PRINT Data
Explicación :
Este segundo ejemplo ilustra el uso de formatos monetarios (DOLLARx.y) y de separación de miles (COMMAx.) para mejorar la presentación de datos financieros y cantidades. También calcula un 'Prix_Total' en un DATA step.
¡Copiado!
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 Bloque de código
DATA STEP / PROC FORMAT / PROC CAS Data
Explicación :
Este ejemplo combina la creación de un formato definido por el usuario (STATFMT.) con el uso de SAS Cloud Analytic Services (CAS). Primero carga los datos de los clientes en una tabla CAS, luego aplica el formato personalizado a la variable 'Statut_Anciennete'. Se crea una nueva variable 'Cat_CA' en función de las ventas, lo que demuestra una lógica condicional y la aplicación de otro formato. La tabla formateada se promueve a CAS, haciendo que los formatos estén disponibles para análisis distribuidos.
¡Copiado!
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 Bloque de código
DATA STEP / PROC CAS Data
Explicación :
Este ejemplo destaca la integración de formatos en un flujo de trabajo Viya/CAS para datos numéricos. Utiliza formatos complejos como DATEAMPMx. y COMMAXx.y para la visualización. Además, simula una operación de cálculo que consume muchos recursos ('Valeur_Calculee') que se beneficiaría de la potencia de cálculo distribuida de CAS, y aplica un formato monetario EUROx.y al resultado. La tabla se promueve y los contenidos se muestran a través de una acción CAS, confirmando la aplicación de formatos en un entorno distribuido.
¡Copiado!
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;
Este material se proporciona "tal cual" por We Are Cas. No hay garantías, expresas o implícitas, en cuanto a la comerciabilidad o idoneidad para un propósito particular con respecto a los materiales o el código contenidos en este documento. We Are Cas no es responsable de los errores en este material tal como existe ahora o existirá, ni We Are Cas proporciona soporte técnico para el mismo.
Información de copyright : Copyright © SAS Institute Inc. All Rights Reserved.