Está en la página 1de 8

BIG DATA INTRODUCCIÓN

El ciclo de vida de los datos

Caso de estudio del ciclo de vida de los datos.

Estudio de la tipología de los datos para establecer una


política de almacenamiento.

Trabajamos en una gran cadena de supermercados, Supermarket, que


dispone de múltiples tiendas repartidas por todo el país.
La gerencia de la cadena quiere saber qué opinión se tiene sobre la
compañía en las redes sociales y para eso ha pedido al equipo de ciencia
de datos que realicen un estudio piloto durante un mes.

Detección y análisis de fuentes de información.


El primer paso que debe dar el equipo es encontrar la fuente de los datos
y para ello el equipo realiza un estudio sobre formas de obtener
información de las redes sociales Instagram, Facebook y Twitter.

Tras un tiempo de análisis descubren que ni Instagram ni Facebook


ofrecen sistemas de acceso a datos (APIs) funcionales, pero que Twitter
sí ofrece dicha API, por lo que centran el trabajo en los comentarios que
realicen usuarios de Twitter acerca de la compañía (Supermarket). No
obstante, observan que el API de Twitter ofrece la posibilidad de
descargar tuits que contengan palabras clave (en nuestro caso
buscaremos tuits que contengan el nombre de la compañía, Supermarket,
en el mensaje que el usuario a tuiteado) y que existe una librería en
Python para interactuar con el API de Twitter.

Almacenamiento y organización de los datos.


El API de Twitter devuelve un documento en formato JSON por cada tuit
que encuentra que cumple el requisito establecido, es decir por cada tuit
que contiene la palabra "Supermarket", que es el nombre de la compañía.

Por esto, el equipo de ciencia de datos decide utilizar Mongo DB como


sistema de almacenamiento, ya que es una base de datos orientada a
documentos y que guarda la información en formato JSON, por lo que la
sinergia es total. Como el test inicial no tiene grandes requerimientos el
equipo decide guardar los datos en un único nodo, en una base de datos
Prueba y una colección Test.

Procesado y calidad del dato.


El equipo de ciencia de datos comprueba que los tuits se descargan
correctamente y que son introducidos en Mongo DB. Como la información
proviene de un API contrastada todos los documentos insertados se
consideran válidos.

Como el objetivo es saber la opinión de los usuarios se decide realizar un


análisis de sentimientos de cada uno de los tuits recogidos. Para ello
utilizan un modelo que ya ha sido entrenado con millones de tuits y al que
un compañero que trabaja en la empresa Symanto les ha proporcionado
acceso para esta muestra. De forma que el texto de cada tuit se envía al
modelo de análisis de sentimiento y se obtiene una probabilidad
normalizada de que el tuit sea Positivo, Negativo o Neutro (por
probabilidad normalizada entendemos que la suma de los valores de las
3 probabilidades siempre va a ser igual a 1).

Una vez se han obtenido los valores de las 3 probabilidades para cada
uno de los tuits se procede a guardar la información en una base de datos
relacional con los siguientes campos:
● ID: identificador único de cada tuit.
● Text: El texto contenido en cada tuit.
● Positive: la probabilidad de que cada tuit sea positivo.
● Negative: la probabilidad de que cada tuit sea negativo.
● Neutral: la probabilidad de que cada tuit sea neutro.

Utilizando Python podemos cargar los datos y ver qué pinta tienen:

Para facilitar el análisis, el equipo de ciencia de datos realiza un agregado


por día, de forma que en la base de datos resultante tengamos solamente
30 entradas o filas (una por cada día) y 4 columnas: ID, Positive,
Negative, Neutral. Donde ID ahora será el día del mes, y en Positive,
Negative y Neutral tendremos la media de las probabilidades de todos los
tuits de un día en concreto.
Uso de los datos.
Una vez los datos han sido recogidos, controlada su calidad, agregados y
almacenados se puede proceder al uso de los datos.
Para ello, y ya que el equipo había utilizado Python para recoger los datos,
se seguirá utilizando Python, en concreto la librería pandas. Esta librería
permite cargar datos y realizar operaciones de análisis. Por ejemplo,
podemos extraer información acerca del tipo de datos que hemos
cargado:

Aquí vemos que los campos Positive, Negative y Neutral son de tipo
float64, puesto que contienen números decimales. Mientras que ID es de
tipo int64, números enteros, ya que es el día del mes. De forma similar
podemos obtener estadísticas básicas sobre los datos agregados:
Aquí disponemos de la siguiente información:
● hay 30 filas con datos (count).
● la media, desviación típica, mínimo valor, máximo valor, los 3
cuartiles (25%, 50% y 75%).
Aunque son estadísticas simples ya podemos extraer algo de información,
como que priman las opiniones positivas frente a las negativas y neutras.
Aunque esta información es una foto estática y no nos dice nada de la
evolución temporal.

Explotación de resultados.
Para representar los datos del análisis de sentimientos el equipo de ciencia
de datos decide realizar una visualización sencilla en base a dos ejes:
● en el eje horizontal dispondremos de los días del mes en el que
hemos recogido los tuits, numerados del 1 al 30.
● en el eje vertical representaremos las probabilidades agregadas
para los tres casos, Positive, Negative y Neutral.
Observamos que se han elegido colores fácilmente identificables con la
información que representan: verde para sentimientos positivos, azul
para neutros y rojo para negativos.

Algo tan simple como la correcta elección de colores a la hora de


representar la información puede ayudar o confundir mucho. Con esta
representación es muy sencillo observar cómo va variando (en promedio)
el tono en que los usuarios hablan de nuestra marca. Por ejemplo,
podemos observar que algo ocurrió alrededor del día 23, puesto que las
opiniones neutras e incluso las negativas, prevalecieron durante unos
días. El equipo responsable del negocio deberá evaluar qué pudo ocurrir
durante esos días para que se observara semejante cambio en la
tendencia.

Archivado y destrucción de datos.


Los datos capturados desde el API de Twitter se pueden archivar pero no
se pueden compartir. Si quisiéramos compartirlos con alguien solo
podremos compartir los identificadores de cada tuit, y esa tercera persona
o entidad deberá volver a descargar los tuits. Por lo que realizaremos un
archivado responsable, donde solamente el equipo de ciencia de datos
tenga acceso a dicha información. No requerimos destruir ninguno de los
datos con los que hemos trabajado.
Y así damos por finalizado el ciclo de vida de los datos de este caso de
estudio. En este ejemplo hemos querido dar una visión completa, a la par
que sencilla, de un caso real de ciclo de vida de los datos. Pasando por
todas y cada una de las etapas y dándole sentido a cada una de ellas. A
pesar de ser un ejemplo sencillo, cubre todos los pasos que se deben dar
e ilustra la importancia de las decisiones a tomar en cada etapa del ciclo
de vida de los datos.

También podría gustarte