5 minute read

Minería de datos (8): obtener el resultado y la interpretación de un análisis de componentes principales de forma muy sencilla

Alberto Morillo Alujas1 , Daniel Villalba Mata2 y Emilio López Cano3

1Tests and Trials SLU 2Universidad de Lleida 3Universidad Rey Juan Carlos (Madrid) Este es el último artículo que dedicamos al análisis de componentes principales (PCA por su denominación en inglés), una técnica estadística que nos ayuda a estudiar las relaciones que presentan las variables de un conjunto de datos con un gran número de variables correlacionadas o no entre sí y la relación que tienen también los individuos o lotes que forman parte de ese conjunto de datos entre ellos y con las variables que los definen. Rogamos a los lectores que, para un seguimiento más adecuado de este artículo, revisen los 3 números anteriores de Suis. Recordaremos que un PCA reduce el número de variables de tal forma que mantiene la mayor parte de la variabilidad ayudándonos a encontrar los patrones y relaciones entre las variables, si existen y, posteriormente, con un análisis de conglomerados, veremos las relaciones entre los individuos. Durante esta serie de artículos sobre PCA hemos realizado los ejemplos con un conjunto de datos llamado “pca.csv” que contiene la información de un hipotético estudio de eficacia de un aditivo con 300 lotes de lechones destetados provenientes de una serie de granjas de cerdas a lo largo de un año. Los detalles del experimento pueden leerse en los anteriores números. Este archivo llamado “pca.csv” se encuentra en nuestro blog www.testsandtrials.com/nuestras-publicaciones-estadísticas/. Una vez descargado el fichero, iremos a R, cargaremos el paquete “RCommander” mediante la instrucción library(Rcmdr). Importaremos el archivo “pca.csv” yendo a “Datos/Importar conjunto de datos/Desde un archivo de texto, portapapeles o URL” y lo denominaremos, “pca”. Hay que seleccionar como separador de campos el punto y coma, “;” y como símbolo decimal, la coma, “,”. Un resumen de los datos puede obtenerse en Estadísticos/Resúmenes/Conjunto de datos activos y obtendremos los resultados de la figura 1. En el primer artículo sobre PCA realizamos un primer análisis con una función que incorpora R base, pero terminamos comentando que existe un paquete que realiza de forma automática y muy sencilla todo el análisis de PCA. Este paquete se llama FactoMineR y para usarlo en RCommander tenemos que cargar un paquete que es un plugin (complemento) para FactoMineR llamado RcmdrPlugin.FactoMineR (figura 2). Para realizar el análisis elegimos las siguientes variables: ■ mortality_per (proporción de mortalidad, en tanto por 1),

■ mean_stay (estancia media en días), ■ n_piglets_placed (número de lechones entrados), ■ mean_weight_enter (media de peso por lechón a la entrada en kg/unidad), ■ adfi_kg_head_d (consumo medio diario por lechón y día en kg), ■ adg_kg_head_d (crecimiento medio diario por lechón y día en kg) y ■ cost_head_eur (coste total por lechón salido). Y además como variable factor elegimos “group” (Grupo), que definía los grupos experimental y tratamiento, y como variables suplementarias: ■ fcr (índice de conversión, pienso en kg/peso vivo ganado en kg), ■ cost_med_pig (coste de las medicinas por lechón, en €/lechón) y ■ cost_feed_per_ton (coste del pienso por tonelada en €/tonelada). Estas variables suplementarias no entran a formar parte del cálculo de las componentes principales, pero sí aparecen en los resultados para que podamos ver las relaciones. Y obtuvimos este gráfico de dimensiones o componentes principales como el más representativo (figura 3). Obtuvimos también una serie de salidas numéricas que nos informaban de cómo estaban formadas las componentes principales, nuestras nuevas variables y cuán bien representadas estaban. Pero finalizamos diciendo que todavía había una forma más fácil de hacer el análisis e incluso de obtener automáticamente las conclusiones. Estas funciones son Factoshiny y FactoInvestigate que nos harán directamente un informe de nuestro análisis y gráficos que nos diferenciarán entre los lotes Experimental y Control como en la figura 4.

FACTOINVESTIGATE

FactoInvestigate es un paquete que hace fácil y sencillo el análisis e interpretación de un PCA. Gracias a Simon Thuleau y a François Husson tenemos una herramienta que hace todo lo que hemos visto de forma sencilla y práctica. Para ejecutarlo lo primero que debemos hacer es descargar el paquete FactoInvestigate en R yendo a Paquetes/Instalar paquetes, elegiremos 0-Cloud que será desde donde lo descargaremos. También necesitaremos tener instalado en nuestro ordenador un programa denominado Pandoc, que es un paquete conversor de documentos libre y de código abierto. Para ello lo más sencillo es instalar un paquete de R denominado installr con el procedimiento habitual, y posteriormente ejecutar la instrucción:

installr::install.pandoc()

Después tendremos que reiniciar nuestro ordenador, y a la vez tendremos instalada una aplicación muy útil (ver www.pandoc.org). Una vez tenemos estos paquetes instalados, volveremos a cargar nuestro complemento de RCommander FactoMineR, cargaremos los datos eligiendo las variables como antes y tras ejecutar todo el PCA, escribiremos en la consola de instrucciones:

Figura 3. Gráfico de variables en el PCA.

Figura 4. Diferencia en desviaciones estándar entre el grupo Control y Experimental en las dos primeras componentes principales.

Figura 5. Primera página del informe de PCA con la función Investigate.

library(FactoInvestigate) Investigate(res, file = “PCA.Rmd,” document = “pdf_ document,” parallel = TRUE)

“res” es el objeto que FactoMineR ha creado y con esta instrucción lo que hacemos es crear un documento en pdf donde tendremos toda la resolución de nuestro problema, con conclusiones y gráficos. También podemos hacerlo con una salida en html o en Word para poder modificar nuestro archivo si queremos. El único inconveniente es que la salida es en inglés, pero si eso es un problema, Google Translator u otras herramientas parecidas nos harán sencillo ese trabajo.

FACTOSHINY

Factoshiny es otro paquete del grupo de François Husson. Pauline Vaissié y Astrid Monge junto con el citado Husson, se reparten la autoría de este recurso. Para instalarlo, tendremos que instalar el paquete Factoshiny desde R al igual que hemos hecho con los anteriores buscando en la lista de paquetes, Factoshiny. Una vez instalado, debemos cargarlo con la instrucción:

library(Factoshiny)

Posteriormente, y desde la consola principal de R podemos ver todas las utilidades y bondades de Factoshiny si ejecutamos la instrucción:

PCAshiny(res)

Entraremos en la aplicación (figura 5) donde podremos manipular todas opciones que nos presenta Factoshiny con su interactividad. Factoshiny es una interfaz muy “user-friendly” (fácilmente usable) que permite parametrizar no solo los análisis de componentes principales, sino también otros como análisis de correspondencias y realización de conglomerados. No es necesario ningún conocimiento de programación para usarla, se pueden guardar los resultados en tres tipos de formato, pdf, html y Word y reusarla tantas veces como queramos. Existen tutoriales en inglés y francés de François Husson (http://factominer. free.fr/graphs/factoshiny.html) y además hace la interpretación de los análisis de forma automática. Volveremos en números posteriores a usar esta poderosa y amigable herramienta (figura 6).

This article is from: