Los ejemplos utilizan datos de SASHELP (iris) y creaciones de tablas internas a través de DATA step, cargadas en la memoria de CAS.
1 Bloque de código
PROC CAS / simple.summary
Explicación : Este ejemplo demuestra la coerción de parámetros más simple para una lista de parámetros. El parámetro `table=` normalmente espera una lista con opciones como `name=`. Aquí, 'iris' se proporciona directamente como una cadena, y el servidor CAS la interpreta como el valor del parámetro `name` por defecto. Esto simplifica la sintaxis al omitir los corchetes y la clave 'name='. La `caslib` se especifica para garantizar la ubicación de la tabla 'iris'.
¡Copiado!
proc cas;
session casauto;
/* Utilisation avec coercition: 'iris' est coercé en name="iris" */
/* La caslib SASHELP est généralement accessible par défaut. */
simple.summary / table="iris", caslib="SASHELP";
run;
quit;
1
PROC CAS;
2
SESSION casauto;
3
4
/* Utilisation avec coercition: 'iris' est coercé en name="iris" */
5
/* La caslib SASHELP est généralement accessible par défaut. */
6
SIMPLE.summary / TABLE="iris", caslib="SASHELP";
7
RUN;
8
QUIT;
2 Bloque de código
PROC CAS / dataPreprocess.binning Data
Explicación : Este ejemplo ilustra la coerción para un arreglo de parámetros, como el parámetro `inputs` de la acción `binning`. En lugar de especificar `inputs={{name="SepalLength"}, {name="PetalLength"}}`, podemos listar directamente los nombres de las variables en un arreglo de cadenas (`{"SepalLength", "PetalLength"}`). El servidor CAS interpreta cada cadena como el valor del parámetro `name` para cada elemento del arreglo. Esto hace que el código sea más conciso y legible. La tabla `iris` se carga en `casuser` para garantizar la autonomía del ejemplo.
¡Copiado!
proc cas;
session casauto;
/* S'assurer que la caslib 'casuser' existe et est active */
caslib _all_ assign;
/* Charger la table iris dans la caslib 'casuser' pour l'exemple */
proc casutil;
load casdata="iris" incaslib="SASHELP" outcaslib="casuser" replace;
run;
/* Utilisation avec coercition pour le tableau 'inputs' */
dataPreprocess.binning /
table="iris",
caslib="casuser",
inputs={"SepalLength", "PetalLength"};
/* Nettoyage: suppression de la table temporaire */
table.dropTable / name="iris", caslib="casuser";
run;
quit;
1
PROC CAS;
2
SESSION casauto;
3
/* S'assurer que la caslib 'casuser' existe et est active */
4
caslib _all_ assign;
5
6
/* Charger la table iris dans la caslib 'casuser' pour l'exemple */
/* Utilisation avec coercition pour le tableau 'inputs' */
12
dataPreprocess.binning /
13
TABLE="iris",
14
caslib="casuser",
15
inputs={"SepalLength", "PetalLength"};
16
17
/* Nettoyage: suppression de la table temporaire */
18
TABLE.dropTable / name="iris", caslib="casuser";
19
RUN;
20
QUIT;
3 Bloque de código
PROC CAS / regression.logistic Data
Explicación : Este ejemplo avanzado muestra cómo combinar parámetros coercidos con especificaciones completas dentro del mismo arreglo, utilizando el parámetro `class=` que a menudo está presente en las acciones estadísticas (aquí, `regression.logistic`). Para la variable 'var1', solo se proporciona la cadena (`"var1"`), basándose en la coerción para `name="var1"`. Para 'var2', se utiliza una especificación completa (`{name="var2", order="FORMATTED"}`) para incluir una opción `order`. Esto ilustra la flexibilidad de usar la forma más simple cuando sea posible y la forma completa cuando se necesiten opciones adicionales.
¡Copiado!
proc cas;
session casauto;
caslib _all_ assign;
/* Création d'une table d'exemple en mémoire CAS */
data casuser.mydata;
input var1 $ var2 var3;
datalines;
A 10 1
B 20 0
A 15 1
C 25 0
B 12 1
D 30 1
;
run;
/* Exemple d'action utilisant le paramètre 'class' avec coercition partielle */
/* Charger l'actionSet 'regression' si ce n'est pas déjà fait */
builtins.loadActionSet / actionSet="regression";
regression.logistic /
table={name="mydata", caslib="casuser"},
model={target="var3"},
inputs="var2",
class={
"var1", /* Coercition pour name="var1" */
{name="var2", order="FORMATTED"} /* Spécification complète pour var2 avec option */
};
/* Nettoyage de la table */
table.dropTable / name="mydata", caslib="casuser";
run;
quit;
1
PROC CAS;
2
SESSION casauto;
3
caslib _all_ assign;
4
5
/* Création d'une table d'exemple en mémoire CAS */
6
DATA casuser.mydata;
7
INPUT var1 $ var2 var3;
8
DATALINES;
9
A 101
10
B 20 0
11
A 151
12
C 25 0
13
B 121
14
D 301
15
;
16
RUN;
17
18
/* Exemple d'action utilisant le paramètre 'class' avec coercition partielle */
19
/* Charger l'actionSet 'regression' si ce n'est pas déjà fait */
20
BUILTINS.LOADACTIONSET / actionSet="regression";
21
22
regression.logistic /
23
TABLE={name="mydata", caslib="casuser"},
24
model={target="var3"},
25
inputs="var2",
26
class={
27
"var1", /* Coercition pour name="var1" */
28
{name="var2", order="FORMATTED"} /* Spécification complète pour var2 avec option */
Explicación : Este ejemplo demuestra la coerción al cargar una tabla en CAS. Primero, se crea una tabla SAS local (`work.local_data`). Luego, la acción `table.loadtable` se utiliza para cargar esta tabla en la memoria de CAS. Aquí, el valor de `path` (`"work.local_data"`) se proporciona directamente, y el servidor CAS lo coercióna para designar la fuente. De manera similar, el parámetro `target` se simplifica a `"my_loaded_table"`, el servidor lo interpreta como `name="my_loaded_table"`. El uso explícito de `caslib="casuser"` en la acción muestra cómo apuntar a una biblioteca específica.
¡Copiado!
proc cas;
session casauto;
/* S'assurer que la caslib 'casuser' existe et est active */
caslib _all_ assign;
/* Créer une table SAS locale pour l'exemple */
data work.local_data;
input id name $;
datalines;
1 Alpha
2 Beta
3 Gamma
;
run;
/* Charger la table locale 'local_data' dans la caslib 'casuser' de CAS */
/* 'path' est coercé, 'target' est coercé */
table.loadtable /
caslib="casuser",
path="work.local_data",
promote=TRUE,
target="my_loaded_table";
/* Afficher les informations de la table chargée */
table.tableInfo / name="my_loaded_table", caslib="casuser";
/* Nettoyage : supprimer la table chargée de CAS */
table.dropTable / name="my_loaded_table", caslib="casuser";
/* Nettoyage : supprimer la table de travail SAS locale */
proc datasets lib=work nolist;
delete local_data;
run; quit;
run;
quit;
1
PROC CAS;
2
SESSION casauto;
3
4
/* S'assurer que la caslib 'casuser' existe et est active */
5
caslib _all_ assign;
6
7
/* Créer une table SAS locale pour l'exemple */
8
DATA work.local_data;
9
INPUT id name $;
10
DATALINES;
11
1 Alpha
12
2 Beta
13
3 Gamma
14
;
15
RUN;
16
17
/* Charger la table locale 'local_data' dans la caslib 'casuser' de CAS */
18
/* 'path' est coercé, 'target' est coercé */
19
TABLE.loadtable /
20
caslib="casuser",
21
path="work.local_data",
22
promote=TRUE,
23
target="my_loaded_table";
24
25
/* Afficher les informations de la table chargée */
/* Nettoyage : supprimer la table de travail SAS locale */
32
PROC DATASETS lib=work nolist;
33
delete local_data;
34
RUN; QUIT;
35
36
RUN;
37
QUIT;
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.
SAS y todos los demás nombres de productos o servicios de SAS Institute Inc. son marcas registradas o marcas comerciales de SAS Institute Inc. en los EE. UU. y otros países. ® indica registro en los EE. UU. WeAreCAS es un sitio comunitario independiente y no está afiliado a SAS Institute Inc.
Este sitio utiliza cookies técnicas y analíticas para mejorar su experiencia.
Saber más.