Practica Data Mining Tools
Practica Data Mining Tools
Datos Generales
1 INTRODUCCIÓN TEÓRICA.
El lenguaje más accesible para realizar esta tarea es Python, del cual, existen
actualmente plataformas Open Source para su aprendizaje. A continuación, veremos
dos de las más utilizadas:
Proyecto Jupyter.
El proyecto Jupyter es el sucesor del anterior IPython Notebook, que se publicó por
primera vez como un prototipo en 2010. Aunque es posible utilizar muchos lenguajes de
programación diferentes dentro de Jupyter Notebooks, su nombre es una referencia a
los tres lenguajes de programación principales soportados por Jupyter, que son Julia,
Python y R, y también un homenaje a los cuadernos de Galileo que registran el
descubrimiento de los satélites de Júpiter. Sin embargo, se centra en Python, ya que es
el caso de uso más popular.
“Jupyter Notebook es una aplicación web de código abierto que le permite crear y
compartir documentos que contienen código en vivo, ecuaciones, visualizaciones y
texto narrativo. Los usos incluyen: limpieza y transformación de datos, simulación
numérica, modelado estadístico, visualización de datos, aprendizaje automático y
mucho más. Tiene la versatilidad de poderse hacer en la nube o localmente”.
(Datahack, 2019)
Otra opción para la ciencia de datos es Colab de Google, el cual es un servicio cloud,
basado en los Notebooks de Jupyter, que permite el uso gratuito de las GPUs y TPUs de
Google, con librerías como: Scikit-learn, PyTorch, TensorFlow, Keras y OpenCV. Todo ello
con bajo Python 2.7 y 3.6, aunque aún no está disponible para R y Scala.
1.1 INSTALACIÓN.
Si bien se puede trabajar en cloud, para aquellos que no tienen espacio para hacerlo
en sus propias computadoras, también se puede instalar localmente, para realizar
pruebas en un ambiente controlado.
Si, por el contrario, queremos instalarlo localmente, elegimos la opción The Jupyter
Notebook/Install the Notebook.
Instalación local:
Esta es la forma más sencilla porque cuando instalamos Python desde las versiones 3.5,
el gestor de descarga pip ya viene incorporado dentro de la instalación, aunque en
algunos casos, es de observar mientras se instala que la casilla de este se encuentre
seleccionado para instalarse junto al programa.
Se puede realizar utilizando mamba o conda, aunque para emitir el comando tal como
lo hacemos con pip, deberemos instalarlo (ENLACE para instalar mamba o conda).
Una vez ahí, presentará las opciones para obtener un servidor de Jupyter para trabajar
sin instalar nada:
Seleccionamos la primera opción Try Classic Notebook.
Abriremos ahora un nuevo libro: File/New Notebook/Python 3
Escriba print('Hello World!') en la celda y haga clic en el botón Ejecutar del cuaderno
en la barra de herramientas de arriba o presione Ctrl + Enter. El resultado debería
verse así:
Una de las ventajas que tiene Jupyter, es que, si se importa bibliotecas o declara
variables en una celda, estarán disponibles en otra. De esta manera, puede pensar
en un documento de cuaderno como algo comparable a un archivo de script,
excepto que es multimedia.
Una vez que hemos ejecutado la celda anterior, podemos hacer referencia np y
square en cualquier otra celda.
Probemos cambiando y = 10
Si alguna vez desea restablecer las cosas, hay varias opciones muy útiles del menú
Kernel:
Reiniciar: reinicia el núcleo, borrando así todas las variables, etc. que se
definieron.
Reiniciar y borrar salida: igual que el anterior pero también borrará la salida
que se muestra debajo de las celdas de código.
Reiniciar y ejecutar todo: igual que el anterior pero también ejecutará todas
sus celdas en orden de principio a fin.
Si su núcleo alguna vez se atasca en un cálculo y desea detenerlo, puede
elegir la opción Interupt.
Importamos pandas para trabajar con nuestros datos, Matplotlib para trazar gráficos y
Seaborn para hacer nuestros gráficos más bonitos. También es común importar NumPy,
pero en este caso, aunque lo usamos a través de pandas, no necesitamos hacerlo
explícitamente.
Y esa primera línea no es un comando de Python, sino que usa algo llamado magia de
línea para indicarle a Jupyter que capture los trazados de Matplotlib y los represente en
la salida de la celda.
2 IMPORTANDO DATOS.
Uno de los aspectos más importantes es la importación de datos para poder analizarlos.
Estos datos pueden ser históricos y en general, brindan un panorama interesante que
solo utilizar simples consultas.
Sobre Pandas.
Pandas es una de las librerías de python más útiles para los científicos de datos. Las
estructuras de datos principales en pandas son Series para datos en una dimensión
y DataFrame para datos en dos dimensiones.
Estas son las estructuras de datos más usadas en muchos campos tales como finanzas,
estadística, ciencias sociales y muchas áreas de ingeniería. Pandas destaca por lo fácil
y flexible que hace la manipulación de datos y el análisis de datos.
Para poder trabajar en el análisis de los datos, debemos asegurarnos de importar esta
librería.
DataFrames.
En Pandas los DataFrames junto con las Series, son unidades básicas. Crearemos una
serie de números aleatorios y usaremos funciones estadísticas para analizarlo.
De igual manera, se puede obtener elementos de las series por su valor de índice, o por
un rango, usando la notación usual en Python. Las Series también comparten mucho del
comportamiento de los NumPy Arrays, haciéndolos instantáneamente compatibles con
muchas librerías y recursos.
NOTA: Para el ejercicio anterior, nos debemos fijar si hay error y luego, deberemos llamar
las librerías en las que se hace mención dentro del bloque de código, como en este
caso, Pandas y Numpy.
Los DataFrames por otro lado, son estructuras bidimensionales de datos. Son bastante
utilizadas porque proveen una abstracción similar a una hoja de cálculo o a una tabla
de SQL. Los DataFrame tienen índices (etiquetas de fila) y columnas, ambos ejes deben
encajar, y el resto será llenado de datos no válidos.
Utilizaremos la función de Pandas read_csv para cargar los datos. Esto crea un DataFrame, una
unidad de datos en Pandas para el análisis de datos.
Archivo1: departamentos.csv
Archivo 2: departamentos2.csv
Observaciones:
Constructores adicionales:
DataFrame.from_dict
Y su resultado es el siguiente:
Ejemplo 2. Si pasa orient='index', las claves serán las etiquetas de las filas. En este caso,
también puede pasar los nombres de columna deseados:
Salida:
Adición, selección y borrado.
Salida:
Puede insertar ndarrays sin procesar, pero su longitud debe coincidir con la
longitud del índice del DataFrame. Por defecto, las columnas se insertan al final.
La función insert está disponible para insertar en una ubicación particular en las
columnas:
Visualización de datos desde un archivo.
Si queremos visualizar una “x” cantidad de datos entonces tendríamos que hacer uso
del comando head():
Pandas en 30 minutos
Video Enlace
(Python)