Anda di halaman 1dari 55

Captulo 3

Preparacin de datos

Contexto y perspectiva
Un caso de estudio nos dar una mejor perspectiva de lo que es la preparacin de
datos en un modelo de minera de datos.
Jerry es un gerente de mercadeo para una firma de diseo y publicidad en internet.
Su jefe le pide desarrollar un conjunto de datos que contenga informacin sobre los
usuarios de internet. La compaa usar estos datos para determinar qu tipo de
personas estn utilizando el internet y cmo la firma puede ofrecer sus servicios a
este grupo de usuarios.
Para completar su tarea, Jerry crea una encuesta en lnea y coloca enlaces de la
encuesta en diversos sitios web populares. En dos semanas, Jerry ha recopilado
suficientes datos para iniciar un anlisis, pero encuentra que los datos necesitan ser
normalizados. l nota tambin que algunas observaciones en el conjunto de datos
han perdido valores o que aparentan tener datos invlidos. Jerry se da cuenta que
es necesario realizar un trabajo adicional en los datos antes de empezar un anlisis.

Repaso del capitulo 1

Repasando el captulo 1 recordaremos que la metodologa CRISP de minera de


datos requiere tres faces antes de desarrollar un modelo de minera de datos
funcional.
Comprensin organizacional o del negocio: Este paso es crucial para poder
obtener buenos resultados al final. Como mencionado antes, al empezar nuestra
tarea de minar datos, debemos tener muy claro a dnde queremos llegar. De lo
contrario, podemos llegar a terminar sacando grandes cantidades de datos sin
sentido.
Comprensin de datos: Nuestra misin en esta fase es haber recolectado,
identificado y entendido nuestros grupos de datos. an teniendo los datos
accesibles y mejor ordenados, hay ms asuntos que tratar, como por ejemplo la
veracidad de estos datos.
Preparacin datos: Los datos vienen en muchas formas y formatos . Pueden ser
numricos, o pueden ser prrafos de texto, o pueden estar en forma de imgenes,
como por ejemplo grficos estadsticos, o pueden ser testimonios de una encuesta
de satisfaccin de los clientes.

Comprensin de datos

Para ayudar a Jerry necesitamos contestar cierto tipo de preguntas en esta


fase.
Qu sistema de base de datos usaremos? Qu software de encuestas
usaremos? Podemos confiar en software de segunda mano? Qu tipo de
preguntas son las que ms necesitaremos? Qu formato de datos vamos a
utilizar? Los datos sern numricos, testimoniales, o un simple texto?
qu campos utilizaremos (nombre, pas o estado, etc)?
Luego de realizar la encuesta, recopilamos y analizamos los datos
obtenidos en ella

Preparacin de datos

Una vez hemos pasado la fase de comprensin de datos, y hemos


obtenido los resultados de nuestra recopilacin, podemos empezar la
preparacin de datos.

Si deseas trabajar junto a nosotros te recomendamos instalar


OpenOffice o RapidMiner (si es que no lo has hecho ya) y de esa forma
realizar los ejercicios y ejemplos que daremos en cada capitulo.

Preparacin de datos
Supongamos que la base de datos subyacente de la encuesta que Jerry
diseo en lnternet est representada como la captura de pantalla
siguiente (OpenOffice)

Este diseo le permitira a Jerry observar los datos recopilados sobre las
personas en una tabla, y sobre su comportamiento en internet en otra.
RapidMiner se puede conectar a ella con fin de minar las respuestas.

Preparacin de datos

Pero, que pasara si Jerry quiere minar los datos de ambas tablas de
una sola vez? Una forma simple para recopilar datos de mltiples tablas
en una nica ubicacin es crear un visualizador de base de datos
(database view).

Un visualizador (Database View) es un tipo de pseudo-tabla, creada por


una declaracin escrita en SQL que este nombrada y almacenada en la
base de datos.

Preparacin de datos

Esta es la manera para crear un Database view en OpenOffice

Preparacin de datos

Y aqu se muestra el View en un visualizador de hoja de datos


(datasheet view)

Preparacin de datos

La creacin de visualizadores es una forma para organizar y recopilar


datos en una base de datos relacional, y as prepararlos para
actividades de mineras de datos.

En este ejemplo, aunque la informacin personal en tabla de


participantes puede ser almacenada una sola vez en la base de datos,
se muestra tambin en la tabla de respuestas, creando un conjunto de
datos que es ms fcil de minar ya que es tanto rica en informacin
como consistente en su formato.

Depuracin de datos

A pesar de poner nuestro mejor esfuerzo para mantener calidad e


integridad en la informacin a la hora de recopilar datos, es inevitable que
se den algunas anomalas en nuestros datos en algn momento.

El proceso de depuracin de datos nos permite manejar estas anomalas


de una manera que puedan tener sentido para nosotros. En forma de
recordatorio para este capitulo, examinaremos la depuracin de datos de
cuatro maneras diferentes: Manejando datos perdidos, reduciendo datos
(observaciones), manejando datos inconsistentes, y reducir atributos.

Preparando RapidMiner

Nuestra primer tarea en la preparacin de datos es manejar los datos


perdidos, sin embargo esta ser nuestra primera vez usando RapidMiner as
que los primeros pasos sern orientados a acostumbrarnos al uso de
RapidMiner, luego nos moveremos directamente al manejo de datos
perdidos.

Los datos perdidos son aquellos que no existen en un conjunto de datos,


prdida de datos no es lo mismo a un campo con Cero u otro valor, es un
campo en blanco y que su valor es desconocido. Algunas veces es conocido
como dato NULL, dependiendo de tu objetivo en la minera de datos.

En la imagen podemos observar campos en blanco, esos campos son nuestra


prdida de datos.

Manejando la prdida de datos

Puedes decidir dejar la prdida de datos as como est o llenarla con


algn otro valor.

La prdida de datos en algunos casos no es un problemas, por ejemplo


en nuestro caso podemos ver que un participante dej en blanco los
campos de Online gaming y Online Shopping, podemos asumir que no
participa en dichas actividades y por eso las dej en blanco.

Pero qu hacemos con la prdida de datos y los datos null? Es algo


desconocido para nosotros. Para propsitos de minera de datos, hay
una variedad de opciones disponibles para manejar la prdida de datos.

Manejando la prdida de datos

Ejercicio:

Inicia la aplicacin RapidMiner dando doble clic al cono que aparece en


el escritorio o buscando la aplicacin en el men de inicio.

Manejando la prdida de datos

A continuacin crearemos un nuevo repositorio a nuestro repositorio


(nosotros utilizamos RapidMinerBook), tu puedes darle el nombre que
desees. Luego buscamos la carpeta donde almacenaremos nuestros
conjuntos de datos, damos clic en el icono de la carpeta y buscamos el
directorio que utilizaremos.

Nos aparecer que hay actualizaciones disponibles, acptalas y aprovecha


a instalar el mdulo de minera de texto (text mining module)

Manejando la prdida de datos

RapidMiner tiene dos reas principales con herramientas muy tiles: Repositorios
(repositories) y Operadores (operators). Se puede acceder a ellos por medio de las
pestaas de la esquina inferior izquierda.

El rea de repositorios es un lugar donde puedes conectar cada conjunto de datos


que quieres minar

El rea de operadores es donde se encuentran todas las herramientas de minera


de datos. Ests son usadas para crear modelos o para manipular conjuntos de datos

Crearemos un repositorio: en la seccin de Repositories, damos clic en


New Repository

Para nombre de y ruta de


nuestro repositorio y el de la
derecha es la instalacin y
actualizacin

Manejando la prdida de datos

Ahora ya podemos utilizar RapidMiner, damos clic en New Process y nos


mostrar esta ventana

Manejando la prdida de datos

Si das clic a repositorios vers que el primero que aparece es el que creamos (RapidMiner
book)

Como el objetivo principal de este curso es dar una introduccin a la minera de datos, no
veremos todas las herramientas de RapidMiner, slo las que se consideren necesarias para
los ejercicios y casos que se expongan.

Manejando la prdida de datos

Utilizaremos archivos CSV(comma separate values) Valores separados por


comas.

Hay algo que debes saber, la mayora de proyectos de minera de datos


incorporan conjuntos de datos con docenas de atributos y miles o hasta
millones de observaciones, nosotros utilizaremos pequeos conjuntos de datos
en el curso.

Manejando la prdida de datos

Si observamos la captura anterior, podemos ver que tenemos una variedad de


fuentes de datos para importar. Al importar, lo que haces es traer tus datos a
un archivo de RapidMiner. Si tu conjunto de datos es muy grande puede tomar
mucho tiempo importar tu datos.

Debes tener en cuenta el espacio disponible en tu disco duro. A medida vaya


creciendo tu conjunto de datos es mejor usar el primer icono (el de la
izquierda) para colocar repositorios remotos con fin de trabajar con datos
almacenados en otro lugar.

Como se mencion previamente utilizaremos (en todos los ejemplos) los


archivos CSV que son archivos lo suficientemente pequeos, fciles y rpidos
para trabajar.

Manejando la prdida de datos

Presionamos clic en la opcin Import CSV files y nos aparecer la siguiente ventana

Buscamos la carpeta donde tenemos nuestro conjunto de datos lo seleccionamos y


damos clic en siguiente. Luego seleccionamos como separador Comma (coma).
Nota: si nuestro conjunto de datos tena comas hay que tener cuidado, para esos
casos es mejor seleccionar comilla simple (Semicolon)

Manejando la prdida de datos

Una vez la vista preliminar muestra columnas para cada atributo, clic en
Next. Nos daremoscuenta que RapidMiner ha tratado a nuestros
nombres de atributos como si ellos son nuestra primera fila de datos, o
en otras palabras, nuestra primera observacin. Para solucionar este
problema, haga clic en el cuadro desplegable de anotacin junto a esta
fila y ponere nombre, y solucin a dicho problema, clic en Next.

Manejando la prdida de datos

En el cuarto paso de la importacin de datos va asistente, RapidMiner tratar de adivinar


el tipo de dato para cada atributo. Ya sea numrico, texto, o fecha. Esto puede ser
cambiado pero aceptaremos los que arroja por defecto.

RapidMiner tambin indica el rol que juega cada atributo, por defecto todas las columnas
son importadas con el rol de attribute (atributo), sin embargo nosotros podemos cambiar
estos roles aqu si sabemos que un atributo jugar un rol especfico en nuestro modelo de
minera de datos.

Como uno puede cambiar despus los roles de los atributos aceptaremos los que
RapidMiner arroja por defecto. Nota: si nos fijamos uno puede seleccionar atributos que no
quiere importar, esto puede realizarse limpiando el checkbox del atributo, pero de igual
forma esto puede hacerse despus as que aceptaremos las configuraciones por defecto.

Manejando la prdida de datos

Manejando la prdida de datos

El paso final para importar datos es elegir el repositorio donde


almacenaremos nuestro conjunto de datos, y darle un nombre a dicho
conjunto en RapidMiner. En este caso elegiremos el repositorio RapidMiner
Book y el nombre que le daremos ser Chapter3. Luego dar clic en finalizar y
nuestro archivo CSV ser importado.

Manejando la prdida de datos

Ahora podemos ver nuestro conjunto de datos disponible en RapidMiner.


Para empezar a usarlo en el proceso de minera de datos, simplemente lo
arrastramos y lo colocamos en la ventana de proceso principal.

Manejando la prdida de datos

Cada rectngulo en RapidMiner es un operador. El operador recuperacin obtiene


un conjunto de datos y los pone a disposicin, los medio-crculos pequeos en los
lados del operador, y de la ventana principal de procesamiento, son llamados
puertos (Ports). Un output o salida (Out) port de nuestro operador de recuperacin
de conjunto de datos est conectada a un grupo de resultados (res) port va spline
(anclas). Las anclas, combinados con los operadores conectados por ellos,
constituyen a un Stream de minera de datos.

Para ejecutar el stream de minera de datos y ver los resultados hay que dar clic en
el botn triangular de Play en la barra de herramientas en la parte de arriba. Esto
cambiara su visualizador a una perspectiva de diseo que es la que vimos en la
captura anterior, en esa perspectiva puedes pasar a otra donde se vea el
visualizador de resultados.

Al presionar clic en Play RapidMiner, puede preguntarte si quieres guardar tu


proceso y esto ocurrir cada vez que corras (play) el stream.

Manejando la prdida de datos

Esta es el visualizador de resultado

Puedes cambiar de perspectiva con solo dar clic en uno de los botones
que aparecen en la parte superior de la pantalla. Como podemos ver
hay una rica variedad de visualizadores en la perspectiva de resultados.

Metada data view, Data view, Plot view, advanced charts, Annotations.

Manejando la prdida de datos


El visualizador de meta dato (Meta data view) nos brinda estadsticas
bsicas pero descriptivas. Es aqu donde percibimos la cantidad de
observaciones que tienen valores perdidos en cada atributo de nuestro
conjunto de datos. Las columnas del Meta data view pueden ser
estiradas para que su contenido sea legible.
Esto se realiza moviendo el puntero hacia la lnea vertical entre cada
columna, y luego presionar y mantener clic para arrastrar la columna y
hacerla ms ancha.

Manejando la prdida de datos


La informacin presentada en este visualizador puede ser muy til a la
hora de decidir donde est la perdida de datos, y que hacer al respecto.
Por ejemplo al ver los resultados del atributo Online_Gaming. El
resultado nos presenta que hubieron seis respuestas con el valor N y
dos con Y mientras hay tres valores perdidos. Podramos usar la
respuesta ms comn para reemplazar los valores perdidos. Claro que
esto puede o no ser una respuesta precisa.
Como mineros de datos debemos ser responsables de cada cambio que
pensamos realizar en nuestro conjunto de datos, nos guste o no al
hacer cambios siempre daamos un poco la integridad de los datos, y
en algunas ocasiones las consecuencias pueden ser drsticas.

Manejando la prdida de datos

Por cuestiones de ejemplo, en este caso cambiaremos los valores reconociendo que
lo que estamos por hacer no siempre ser lo correcto para manejar la prdida de
datos.
Damos clic a la perspectiva de diseo para poder cambiar los tres valores faltantes
en el atributo Online_Gaming a N

Para facilitar la navegacin en las carpetas de la esquina inferior


izquierda, podemos utilizar la cajita de bsqueda.
Ah vemos una herramienta llamada Data Transformation (Transformacin
de datos), que contiene una sub-rea con el nombre Value modification
(modificacin de valores) donde encontramos un operador llamado
Replace missing Values (Reemplazar valores perdidos).

Manejando la prdida de datos

Manejando la prdida de datos


Agregamos este operador a nuestro stream, simplemente lo arrastramos y lo soltamos
hacia el spline. Cuando mueva el puntero hacia el ancla, esta se pondr un poco ms
oscura, indicando que es cuando debes soltar el botn del mouse, el operador se conectar
con el stream.
Puedes reconfigurar tu ancla de forma manual, solo debes de dar clic en el puerto de salida
(out port) en el Retrieve operator, y luego clic en exa port del operador que estamos
agregando. Exa viene de example set (grupo de ejemplo), recuerda la palabra example en
Rapidminer es utilizada para observaciones en un conjunto de datos.

Manejando la prdida de datos


Asegrate que el puerto exa del operador est conectado con el
de resultado cuando corras el proceso y obtendrs una salida.
Cuando un rectngulo anaranjado est alrededor de un operador
quiere decir que podremos modificar sus parmetros o
propiedades que se encuentran a la derecha.
Para este caso cambiaremos el valor del atributo Online_Gaming.

Manejando la prdida de datos


Para este ejercicio, hemos decidido cambiar todos los valores perdidos del
atributo Online_Gaming al valor N, ya que era la respuesta ms comn en ese
atributo. Para cambiarlo, cambiamos el tipo de filtro de atributo (Attribute filter
type) a single, y vers que una caja con opciones aparecer, permitindote
elegir el atributo que modificaremos.
Luego, expandiremos el campo default y elegiremos value, con el que har que
aparezca una caja con el nombre replenishment value. Digitamos el valor a
reemplazar N en esta caja.

Manejando la prdida de datos


Debes comprender que hay muchas otras opciones disponibles para ti en el panel de parmetro
(parameters pane). Pero nosotros no las exploraremos todas aqu, sintete libre para
experimentar con ellas. De esta forma aprenders mucho sobre la flexibilidad y el poder que
ofrece RapidMiner al probar sus diversas herramientas y caractersticas.
En la siguiente captura podemos ver los resultados de haber cambiado los valores perdidos.
Podemos observar como el atributo Online_Gaming subi en la lista porque ya no tiene prdida
de valores. Lo mismo podramos hacer para los otros atributos que tengan prdida de datos.

Manejando la prdida de datos

Reduccin de datos
Cambia la perspectiva a diseo. Los siguientes pasos te ayudar a reducir el
nmero de observaciones en tu conjunto de datos por medio de un proceso
de filtrado.
Busca en la pestaa de operadores, y digita la palabra filtro. Esto te ayudar
a encontrar el operador Filter Example, que es el que utilizaremos en este
caso. Arrastra el operador y conctalo al stream, justo despus del operador
de valores perdidos.

Reduccin de datos

Reduccin de datos

En Filter Examples, seleccionado, en el parmetro filters dar clic en Add


Filters,
aparecer
esta
pantalla
y
seleccionar
la
columna
Online_Shopping, en el siguiente drop down eligiremos Does not equal,
y en el text box pondremos ?, esto nos permitir filtrar los renglones que
no sean iguales a ?, y solo aparecern los renglones que sean diferentes
a ste.

Reduccin de datos
Si corres el modelo (presionando clic al botn play). En la perspectiva
de resultado vers que tu conjunto de datos ha sido reducido de once
observaciones (o ejemplos) a nueve. Esto es porque el atributo
Online_Shopping tena dos valores perdidos y fuero removidos. Puedes
ver que ellos ya no estn eligiendo el botn de radio del Data view. Los
valores no fueron eliminados de su fuente original, simplemente fueron
removidos del conjunto de datos en el stream donde el operador de
filtro est localizado y no volvern a ser considerados en operaciones
de minera de datos.
En algunas instancias es mejor remover la observacin completa, sobre
todo cuando los valores perdidos no puede ser asumidos o estimados.

Reduccin de datos
En los casos donde los atributos tienen una naturaleza numrica,
puede ser aceptable reemplazar los datos, pero no cuando sean datos
subjetivos.
La minera de datos puede ser confusa y abrumadora cuando el
conjunto de datos es bastante grande, pero por eso existen tcnicas
para manejar ese tipo de situaciones.

Reduccin de datos

El ejemplo anterior nos ense como filtrando los datos podemos reducir el tamao
de nuestro conjunto de datos (removiendo datos indeseados o perdidos de un
atributo), pero tambin podemos reducir el tamao del conjunto de datos al probar
un modelo de minera de datos en un subconjunto de datos. Esto reduce
grandemente el tiempo de procesamiento de los datos.
Usaremos un operador llamado Sample, as que lo buscamos y lo agregamos a
nuestro stream de datos, en el panel de parmetros, colocamos relative y luego 0.5
en la cajita de texto que aparece debajo, de esta forma utilizaremos solo el 50% de
nuestro conjunto de datos.

Reduccin de datos
A la hora de correr nuestro modelo veremos que solamente
muestra de cuatro a cinco observaciones elegidas al azar de
las nueve que quedaban en nuestro atributo.
Como podemos ver existen diferentes formas para reducir los
datos de nuestro conjunto y as facilitarnos la minera de datos.
Ahora para pasar al siguiente paso es importante que todo
quede como estuvo en un principio.
Para ello cambiamos a nuestra perspectiva de diseo y
eliminamos el operador de filtros y el sample presionando clic
derecho sobre ellos y eligiendo la opcin eliminar.

Manejando datos inconsistentes


La inconsistencia de datos es diferente a la perdida de datos. Los datos
inconsistentes son aquellos que existen pero que no son vlidos o significativos.
En esta captura podemos observar inconsistencia en los datos del atributo de
twitter.

Qu hace el 99 ah? Los nicos valores vlidos para ese atributo son N o Y.
Como mineros de datos lo que haremos ser filtrar este atributo as como
hicimos anteriormente, o utilizamos un operador para reemplazar el valor por
uno vlido.

Manejando datos inconsistentes


Qu hace el 99 ah? Los nicos valores vlidos para ese
atributo son N o Y. Como mineros de datos lo que haremos
ser filtrar este atributo as como hicimos anteriormente, o
utilizamos un operador para reemplazar el valor por uno
vlido.

Manejando datos inconsistentes


Regresamos a nuestra perspectiva de diseo y en la pestaa de bsqueda buscamos
el operador llamado Replace. Lo arrastramos al stream y lo conectamos a las anclas.
En el panel de parmetro, cambiamos el atributo de filtro a single, y luego indicamos
que Twitter es nuestro atributo a modificar. En el campo replace by decidiremos cual
ser el valor daremos al atributo 99. Si lo dejamos en blanco, entonces la
observacin ser un valor perdido.
As que como en el caso anterior elegiremos el valor ms comn en el atributo, que
es N. Digitamos N y luego corremos el modelo y veremos que habr un cambio en el
atributo

Manejando datos inconsistentes

El manejo de la inconsistencia de datos no es algo tan


sencillo, habr situaciones donde los datos inconsistentes
sean muchos y la toma de decisin se volver compleja.

Reduccin de atributos
En muchos conjuntos de datos nos daremos cuenta que
hay atributos que son simplemente irrelevantes para la
minera de datos, por lo que es necesario remover aquellos
que no nos sean significativos para tener un mejor manejo
y una minera ms efectiva.
En captulos posteriores hablaremos de los elementos que
hay que tomar en cuenta para evaluar la importancia de un
atributo en nuestro modelo de minera de datos.
Con los siguientes pasos podemos deshacernos de aquellos
atributos irrelevantes o innecesarios en nuestro modelo.

Reduccin de atributos
Regresamos a la perspectiva de diseo, y en la pestaa de bsqueda elegimos el
operador Select Attribute lo arrastramos a nuestro stream y lo colocamos a modo
que quede entre el operador Replace y el puerto de resultado (Result set port)

Reduccin de atributos
En el panel de parmetros colocamos el filtro de atributos (attribute
filter) a subset y presionamos clic en el botn select
Usando las flechas verdes podemos
elegir los atributos que vamos a dejar
para nuestro modelo. En este caso
estamos
realizando
un
estudio
demogrfico de internet por lo que
elegiremos los atributos: Birth_Year,
Gender,
Marital_Status,
Race
y
posiblemente Years_on_Internet.
Puedes elegir ms de un atributo
sosteniendo la tecla shift.
Luego presionamos clic en OK y vemos
los resultados en el stream de datos.

Resumen
Hemos visto una variedad de elementos interesantes que resumiremos
en lo siguiente:
En RapidMiner podemos crear views que nos permitan ver datos de
tablas diferentes que estn relacionadas.
A la hora de preparar datos es necesario depurar a tal manera que
quedemos solo con lo que se necesita y para ello es necesario
aprender lo siguiente: el manejo de la perdida de datos, reduccin de
datos, reduccin de atributos y el manejo de la inconsistencia de datos
El uso de archivos CSV facilita un poco el trabajo ya que son livianos y
fciles de utilizar.
Las etapas comprensin del negocio y comprensin de los datos son de
alta importancia ya que si no les tomamos el cuidado indicado no
tendremos objetivos fijos para nuestro modelo.

Preguntas
Qu programa utilizamos para los procesos de minera de datos?
Mencione los 4 elementos mencionados para la depuracin de datos.
Qu es la perdida de datos?
De qu forma se le conoce a los datos perdidos?
Qu es la inconsistencia de datos?
En qu se diferencia la prdida de datos con la inconsistencia de datos?
En qu nos beneficia la reduccin de atributos y la reduccin de datos?

Preguntas
Mencione qu herramienta se utiliz para unir las dos tablas relacionadas de la base
de datos.
Qu es el rea de repositorios RapidMiner?
Qu contiene el rea de operadores RapidMiner?
Mencione al menos 3 operadores utilizados en este ejercicio.
Qu hace el operador Replace?
Cules son las tres fases para hacer un modelo de minera de datos?
Para qu nos sirve el filtrado de datos?

Anda mungkin juga menyukai