lunes, 16 de febrero de 2015

ANÁLISIS DE CONGLOMERADOS (CLUSTER) CON R

ANÁLISIS DE CONGLOMERADOS (CLUSTER) CON R 
Ing. Luis Manfredo Reyes

El análisis de conglomerados (cluster), es una técnica multivariada, en la cual en base a un conjunto de características cuantitativas, se realiza una agrupación de individuos en base a las distancias entre ellos.

No es el objetivo de éste documento profundizar en la teoría del método, sino ejemplificar su análisis en R
Al final del análisis, se obtiene un diagrama llamado DENDROGRAMA, que resume gráficamente el agrupamiento.


R es un paquete estadístico producido  en el proyecto GNU , y se puede descargar en éste link:
http://www.r-project.org/

Se asume que el lector tiene instalado el paquete y conoce el uso básico del mismo.

Ejemplo: Evaluación de materiales de Jícama (Pachirrizus erasus), realizada en El Petén, Guatemala. Los datos se encuentran en el archivo JICAMA1.CSV,  en el siguiente enlace:
http://www.mediafire.com/download/ecsetcwop424ftt/JICAMA1.csv

La decripción del archivo es la siguiente:
CULTIVAR: Código de identificación del material
DÍASFRUC: días a fructificación
VAINASPL: número de vainas por planta
PESO100: Peso de 100 semillas
SEMILLAKG: cantidad de semillas en 1 kilogramo
RENDSEMILLA: rendimiento de semilla
RENDRAIZ: rendimiento de raíces
BRIX: grados brix 
DIASCOSECHA: días a cosecha

1. Importación del archivo hacia R
La forma más fácil de almacenar datos para leerlos en R es en formato CSV
Esto puede hacerse fácilmente desde Microsoft Excel(R)

Datos <- read.table("C:/Users/area fisicomate/Documents/JICAMA1.csv", header=TRUE, sep=",", na.strings="NA", dec=".", strip.white=TRUE)


2. Especificar el análisis
El método más usado es: enlace promedio (average linkage), y la distancia más usada es la euclidiana.
Inicialmente se construye una matriz de distancias (comando dist) y posteriormente se aplica el procedimiento hclust.

HClust.1 <- hclust(dist(model.matrix(~-1 +  BRIX+DIASCOSECHA+DIASFRUC+PESO100+RENDRAIZ+RENDSEMILLA+SEMILLAKG+VAINASPL, Datos)) , method="average")

Luego se grafican los resultados:
plot(HClust.1, main= "Cluster Dendrogram for Solution HClust.1", xlab="Observation Number in Data Set Datos",   sub="Method=average; Distance=euclidian")

El resultado que se produce es el siguiente:


Interpretación: el la gráfica puede verse que el material más distinto a todos es el EC256J.
Los dos más parecidos (la menor distancia entre ellos) son el EC1206 y EC255Pa. 
Luego se van formando grupos mayores. 

No hay comentarios:

Publicar un comentario