Publicado el :

Ejemplo de análisis discriminante canónico con PROC HPCANDISC

Este código también está disponible en: Deutsch English Français
Este script SAS© ilustra el uso del procedimiento HPCANDISC para realizar un análisis discriminante canónico en el conjunto de datos Iris de Fisher. Luego genera un gráfico de dispersión de las variables canónicas 1 y 2, agrupadas por especie, utilizando PROC TEMPLATE y PROC SGRENDER. Este proceso permite visualizar la separación entre los grupos basada en las combinaciones lineales de variables que maximizan la discriminación.
Análisis de datos

Type : SASHELP


Los datos provienen de la biblioteca SASHELP, específicamente del conjunto de datos IRIS, que es un conjunto de datos público estándar para el análisis discriminante.

1 Bloque de código
PROC HPCANDISC
Explicación :
Este bloque ejecuta el procedimiento HPCANDISC para un análisis discriminante canónico. Utiliza los datos `sashelp.iris` como entrada, almacena los resultados canónicos (puntuaciones y coeficientes) en un nuevo conjunto de datos llamado `outcan`, calcula las distancias de Mahalanobis y realiza un análisis de varianza. La variable `Species` se utiliza como variable de identificación de las observaciones y de clasificación de los grupos, mientras que `SepalLength`, `SepalWidth`, `PetalLength` y `PetalWidth` son las variables cuantitativas utilizadas para la discriminación.
¡Copiado!
1PROC HPCANDISC DATA=sashelp.iris out=outcan distance anova;
2 id Species;
3 class Species;
4 var SepalLength SepalWidth PetalLength PetalWidth;
5RUN;
2 Bloque de código
PROC TEMPLATE
Explicación :
Este bloque utiliza PROC TEMPLATE para definir un modelo de gráfico (`statgraph`) personalizado llamado `scatter`. Este modelo crea un gráfico de dispersión (`scatterplot`) que visualiza las dos primeras variables canónicas (`Can1`, `Can2`) resultantes de PROC HPCANDISC. Los puntos se agrupan y colorean según la variable `species`. El gráfico incluye un título de entrada, opciones de ejes personalizadas y una leyenda discreta para los grupos de especies.
¡Copiado!
1PROC TEMPLATE;
2 define statgraph scatter;
3 begingraph;
4 entrytitle 'Fisher (1936) Iris Data';
5 layout overlayequated / equatetype=fit
6 xaxisopts=(label='Canonical Variable 1')
7 yaxisopts=(label='Canonical Variable 2');
8 scatterplot x=Can1 y=Can2 / group=species name='iris';
9 layout gridded / autoalign=(topleft);
10 discretelegend 'iris' / border=false opaque=false;
11 endlayout;
12 endlayout;
13 endgraph;
14 END;
15RUN;
3 Bloque de código
PROC SGRENDER
Explicación :
Este bloque utiliza PROC SGRENDER para generar el gráfico definido previamente por el modelo `scatter`. Toma el conjunto de datos `outcan` (creado por PROC HPCANDISC y que contiene las variables canónicas) como fuente de datos para la representación, produciendo la visualización de los grupos de especies en el espacio de las variables canónicas.
¡Copiado!
1PROC SGRENDER DATA=outcan template=scatter;
2RUN;
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 : S A S S A M P L E L I B R A R Y