Professional Documents
Culture Documents
Resumen
Se presenta el paquete de R FactoClass, donde se implementa la estra-
tegia descrita en Lebart et al. (1995), que combina mtodos factoriales con
anlisis de conglomerados, en la exploracin multivariada de tablas de datos.
Se utilizan funciones de ade4 (Chessel et al. 2004) para realizar el anlisis
factorial de los datos y de stats para el anlisis de conglomerados. Se crean
funciones para tareas especficas y se modifican algunas de las existentes. Se
describen los pasos para crear FactoClass en ambiente Windows y se ilustra
el uso del paquete con un ejemplo.
Palabras clave: software estadstico, anlisis multivariado, anlisis en com-
ponentes principales, anlisis de correspondencias, K-medias, clasificacin
jerrquica, LATEX.
Abstract
The new R package FactoClass to combine factorial methods and clus-
ter analysis is presented. This package is implemented in order to perform a
multivariate exploration of a data table according to Lebart et al. (1995). We
use some ade4 functions (Chessel et al. 2004) to perform the factorial analy-
sis of the data and some stats functions in R to perform cluster methods.
Some new functions are programmed to make specific tasks and another old
ones are modified. We describe the implementation of FactoClass in the
Windows environment and illustrate its use with an example.
Key words: Statistical software, Multivariate analysis, Principal compo-
nents analysis, Correspondence analysis, K-means clustering, Hierarchical
clustering, LATEX.
a Profesor asociado. E-mail: cpardot@unal.edu.co
b Estadstico. E-mail: pcdelcampon@unal.edu.co
231
232 Campo Elas Pardo & Pedro Csar Del Campo
1. Introduccin
En este documento el trmino clasificacin se utiliza como sinnimo de anlisis
o formacin de conglomerados o clasificacin no supervisada. En ningn momento
hace referencia a la clasificacin supervisada o discriminacin, la cual no est
incluida en el paquete construido.
Para el anlisis de una tabla de datos haciendo uso de mtodos multivariados,
Lebart et al. (1995) presentan una estrategia que consiste en realizar primero un
anlisis factorial segn la naturaleza de los datos y luego una clasificacin basada
en un algoritmo mixto: clasificacin jerrquica con el mtodo de Ward y agregacin
alrededor de centros mviles (K-medias). Finalmente se obtiene una particin del
conjunto de datos y la caracterizacin de cada una de las clases, segn las variables
activas e ilustrativas, ya sean cuantitativas o cualitativas.
Para la caracterizacin de las clases se utilizan los valores test, que son ndices
descriptivos construidos siguiendo la metodologa de pruebas de hiptesis, pero sin
el objetivo de hacer inferencias. La ordenacin de los valores test dentro de cada
clase permite obtener las variables continuas que la caracterizan positivamente,
en el sentido de que la media de la clase es suficientemente mayor de la media
global, o negativamente cuando la media de la clase es inferior. Para las categoras
de variables nominales, la ordenacin permite obtener aquellas categoras cuya
proporcin dentro de la clase se diferencia lo suficiente de la proporcin global, ya
sea porque es mayor (valor test positivo) o menor (valor test negativo).
Para la puesta en prctica de la estrategia mencionada utilizando el lengua-
je R (R Development Core Team 2007a) se programa el paquete denominado
FactoClass, el cual utiliza funciones de ade4 (Chessel et al. 2004) para reali-
zar el anlisis factorial de los datos y de stats para los mtodos de clasificacin.
Se programan las funciones complementarias que se requieren, incluyendo algunas
para producir salidas en formato LATEX1 , utilizando el paquete xtable (Dahl 2006).
FactoClass permite obtener salidas similares a las que aparecen en los programas
estadsticos SPAD (Lebart et al. 1999) y DTM (Lebart 2007).
La creacin de paquetes portables facilita la labor acadmica cuando se utiliza
R como lenguaje para la ejecucin de los mtodos estadsticos. Un paquete es
til aun cuando no se requiera la programacin de nuevas funciones, ya que se
pueden incluir tablas de datos y lneas de comandos para los talleres de un curso.
Por ejemplo el texto de Dalgaard (2002) tiene asociado el paquete ISwR (Dalgaard
2005), que incluye las tablas de datos y las lneas de programacin para los ejemplos
incluidos en el texto.
De nuestra experiencia en la creacin del paquete en ambiente Windows, des-
cribimos los aspectos en los que tuvimos especial dificultad, ya que nos parece til
para quienes deseen hacer paquetes portables (ver apndice A).
En la seccin 2 se resume la estrategia de anlisis combinando los mtodos,
luego, en la seccin 3 se describe el paquete, y finalmente se ilustra su utilizacin
con un ejemplo, en la seccin 4.
1 MiKT
EX project page: http://www.miktex.org/ Ver por ejemplo De Castro (2003).
Estas funciones retornan un objeto de tipo dudi con los valores y vectores pro-
pios y las coordenadas factoriales de las filas y columnas. Las dems ayudas a la
interpretacin se obtienen con la funcin inertia.dudi.
Las funciones dudi de ade4 reciben los datos en un objeto data.frame y uti-
lizan todas las columnas como activas.
El paquete ade4 tiene varias funciones para obtener los planos factoriales; sin
embargo en FactoClass se incluye la funcin planfac que recibe un objeto dudi
y produce un plano factorial similar a los del paquete FactoMineR (Husson et al.
2007) o a los de ade4. Para la programacin de esta funcin se tomaron partes de
las funciones de estos dos paquetes.
los ndices de nivel para facilitar la decisin de cuntas clases seleccionar para la
particin.
La funcin kmeans de stats no maneja pesos distintos para las filas. Estos
pesos influyen en los centros de gravedad (3) y en las inercias intra de las clases
(4). Se modifica entonces esta funcin para incluir los pesos de las filas y obtener
las inercias intra clases; se nombra kmeansW. En su opcin por defecto la funcin
kmeans utiliza el algoritmo de Hartigan & Wong (1979) programado en Fortran
con el nombre kmns.f, funcin que se modifica dndole el nombre de kmnsw.f. Las
lneas de programacin modificadas cambian los clculos de centros de gravedad
y suma de cuadrados intra-clase por los de las frmulas (3) y (4).
Variable continua en una clase. Para una variable continua X, con media
general X, el valor test asociado a la media X k de la clase k es:
Xk X
tk (X) = r (5)
n nk
SX
(n 1)nk
Los datos. La tabla Bogot es una tabla de contingencia que clasifica las man-
zanas segn localidades y estratos en el ao de 1997 (DAPD 1997). Se incluye una
columna SinEstrato para contabilizar las manzanas no residenciales.
0.5
0.4
0.3
0.2
ndices
0.1
0.0
Suba
BarrUnidos
Teusaquillo
Usaqun
Chapinero
Fontibn
Engativ
Usme
CiuBolvar
Kennedy
RafaelUribe
SanCristbal
Bosa
Santaf
PteAranda
LosMrtires
AntonioNari
Tunjuelito
LaCandelaria
C3 C1 C5 C4 C2
Figura 2: Dendrograma.
1.5 E4 clase 1
E5
1.Usaqun
1.0 clase 5
0.5
5.BarrUnidos 3.CiuBolvar E1
2.Suba SE clase 3
3.Usme
0.0
4.Fontibn 2.Santaf E2
clase 2 2.Bosa
2.SanCristbal
E3 4.Engativ 2.RafaelUribe
-0.5 clase 4 2.Tunjuelito
4.LosMrtires 2.Kennedy 2.LaCandelaria
4.PteAranda 4.AntonioNario
library(nlme)
gsummary(Bog.act,groups=FC.bogota$cluster,FUN=sum)->clasEst
mosaicplot(clasEst,color=TRUE,main="")
Agradecimientos
Agradecemos al profesor Jorge Ortiz por su labor como editor de este artculo y
a los dos rbitros annimos, quienes hicieron valiosos comentarios que ayudaron a
mejorarlo. Tambin a los estudiantes del curso de Mtodos multivariados de datos
de los dos semestres de 2007, de la carrera de Estadstica, que utilizaron el paquete
y detectaron algunos errores.
Referencias
Cazes, P., Chessel, D. & Doledec, S. (1988), Lanalyse des correspondances inter-
nes dun tableau partitionn. Son usage en hydrobiologie, Revue de Statisti-
que Applique 36(1), 3954.
Chessel, D., Dufour, A. B. & Thioulouse, J. (2004), The ade4 Package - I: One-
table Methods, R News 4(1), 510.
Dahl, D. B. (2006), xtable: Export Tables to LaTeX or HTML. David B. Dahl with
contributions from many others. R package version 1.4-2.
Dalgaard, P. (2002), Introductory Statistics with R, Springer, New York.
Dalgaard, P. (2005), ISwR: Introductory Statistics with R. R package version 1.0-6.
DAPD (1997), Poblacin, estratificacin y aspectos socioeconmicos de Santa Fe
de Bogot, Departamento Administrativo de Planeacin Distrital, Bogot.
De Castro, R. (2003), El universo LATEX, segunda edn, Unibiblos, Universidad
Nacional de Colombia, Bogot.
Friendly, M. (1994), Mosaic Displays for Multi-Way Contingency Tables, Journal
of the American Statistical Association 89(425), 190200.
Hartigan, J. A. & Wong, M. A. (1979), A K-means Clustering Algorithm, Applied
Statistics 28(100108).
Husson, F., L, S. & Mazet, J. (2007), FactoMineR: Factor Analysis and Data
Mining with R. R package version 1.05.
*http://factominer.free.fr, http://www.agrocampus-rennes.fr/math/
Lebart, L. (2007), DTM. Data and Text Mining, Software.
*http://ses.enst.fr/lebart/
Lebart, L., Morineau, A., Lambert, T. & Pleuvret, P. (1999), SPAD. Systme Pour
lAnalyse des Dones, Paris.
*http://www.spad.eu
Lebart, L., Morineau, A. & Piron, M. (1995), Statisitique exploratoire multidimen-
sionnelle, Dunod, Paris.
Ligges, U. (2006), R Help Desk: Accessing the Sources, R News 6(4), 4345.
Ligges, U. & Murdoch, D. (2005), R Help Desk: Make R CMD Work under
Windows an Example, R News 5(2), 2728.
Pardo, C. E. (1992), Anlisis de la aplicacin del mtodo de Ward de clasificacin
jerrquica en el caso de variables cualitativas, Tesis de Maestra, Estadstica,
Universidad Nacional de Colombia, Facultad de Ciencias, Departamento de
Matemticas y Estadstica, Bogot.
Pinheiro, J., Bates, D., DebRoy, S. & the R Core team., D. S. (2007), nlme: Linear
and Nonlinear Mixed Effects Models. R package version 3.1-83.
R Development Core Team (2007a), R: A Language and Environment for Statis-
tical Computing, R Foundation for Statistical Computing, Vienna, Austria.
ISBN 3-900051-07-0.
*http://www.R-project.org
R Development Core Team (2007b), Writing R Extensions, R Foundation for Sta-
tistical Computing, Vienna, Austria.
Apndice A.
Construccin de FactoClass en ambiente Windows
La versin portable del paquete se construye en ambiente Windows, siguiendo
los pasos recomendados por Ligges & Murdoch (2005). La nica variacin que
se tiene es la ubicacin de MikTEX, ya que no se modific la instalacin por
defecto que se tena. La estructura de carpetas luego de terminados los pasos
recomendados se muestra en la figura 4. Para obtener los archivos fuente de las
funciones, especficamente el cdigo Fortran kmns.f, se utiliza la gua dada por
Ligges (2006). La ruta para acceder a los programas desde los comandos, asociada
a la configuracin de carpetas mostrada en la figura 4, es (archivo rpath.bat):
PATH=.;c:\devel\tools\bin;c:\devel\gnwin32\bin;c:\devel\MinGW\bin;
c:\devel\R-2.5.1\bin;c:\devel\HtmlHelp;c:\devel\Perl\bin;c:\devel\Tlc\bin;
c:\texmf\miktex\bin;%SystemRoot%\system32;%SystemRoot%
SET TMPDIR=C:\temp
scr: subrutina kmnsw.f en Fortran 77, que es una modificacin de kmns.f para
introducir los pesos de los individuos (2.4),
FactoClass chm
data
inst doc
man
scr
HtmlHelp
Perl bin
tools bin
R-2.5.1 bin
Tcl bin