Primeros Pasos
![](https://grojar.github.io/Petrofisica-en-Python/img/primeros_pasos.gif)
En este artículo conoceremos algunas de las librerías de python más utilizadas en la ciencia de datos.
Bienvenidas/os!!, muchas gracias por visitarnos, esperamos que disfruten su tiempo con nosotros. A continuación veremos una introducción al mundo Python de la ciencia de datos.
Python es uno de los lenguajes computacionales más utilizados en las comunidades científicas y de investigación, y una de las razones principales para ello, es su facilidad de uso y su sintaxis simple, lo que lo hace muy apto para personas que no tienen experiencia en programación.
En este artículo, veremos las aplicaciones y librerías más comunes en Python utilizadas en ciencia de datos.
Si están interesados en las librerías específicas para trabajar con archivos estándar de la industria del petróleo y gas, visiten nuestro artículo Archivos LAS, LIS y DLIS en Python
ℹ️ La enseñanza de programación dura en Python no la haremos, la consideraremos como ya sabida por ustedes. Pero no entren en pánico, sabiendo lo básico de programación en Python, (manejo de listas, diccionarios, clases, def, indexing, loops, etc), ya les va a alcanzar para practicar con nuestros ejemplos..ℹ️ Todos los ejemplos de códigos python en nuestro sitio web van a encontrarlos en nuestro repositorio GitHub. Los mismos fueron creados en archivos Jupyter Notebook (tienen la extensión .ipynb).
LIBRERÍAS
- Anaconda
- Jupyter Notebook y JupyterLab
- pandas
- NumPy
- Scilit-Learn
- TensorFlow
- matplotlib-seaborn-plotly
ANACONDA
Es algo que les recomendamos utilizar para trabajar en python si van a adentrarse en ciencia de datos. Hay varias razones, pero las principales, a nuestro entender, serían:
- Al instalar Anaconda, también instalaremos python, como así también varias librerías relacionadas a la ciencia de datos, entre las cuales nombraremos a NumPy, pandas, scikit-learn, matplotlib, plotly, tensorflow, etc.
- Además instala Jupyter Notebook y JupyterLab, las cuales son aplicaciones que hacen mucho más fácil y amigable escribir códigos en python, hacer anotaciones, etc. | VOLVER⤴️
Jupyter Notebook y JupyterLab
JupyterLab fue desarrollada más tarde, tiene la capacidad de hacer lo mismo que Jupyter Notebook, pero además permite utilizar hojas de cálculo, PDF, HTML, etc. También podremos editar y ejecutar códigos en otros lenguajes como R o Scala. Sumado a todo esto, los usuarios pueden configurar y organizar flujos de trabajo en ciencia de datos, computación científica, periodismo computacional y aprendizaje automático.
Como si esto fuera poco, además integra toda una serie de herramientas modernas que permiten incrementar la colaboración entre los profesionales, publicar y revisar código entre personas de todo el mundo, en flujos como los que nos proporcionan GitHub o GitLab. | VOLVER⤴️
pandas
pandas es una librería muy potente para manejar datos, nos permite filtrar, analizar, y hacer control de calidad de los mismos. A menudo, pandas es utilizado para preparar la información para pasos siguientes (machine learning, gráficos, etc).
Tomemos los valores nulos como ejemplo (nan, Nan). Dentro de un dataframe pandas podremos encontrarlos fácilmente utilizando filtros, reemplazarlos manualmente y/o interpolarlos, etc. Si queremos descartar la información con datos nulos, podremos filtrarla y crear otro dataset/dataframe de manera muy sencilla, o pisar el original, y mucho más.
Si quieren practicar un poco con dataframes pandas, en varios de los archivos dentro de nuestro repositorio GitHub van a encontrar ejemplos. También pueden optar por visitar este artículo en nuestro sitio. | VOLVER⤴️
NumPy
scikit-learn
Siempre hay que tener en cuenta que no está diseñada para leer, manejar y limpiar los datos, por lo tanto, es conveniente hacerlo con NumPy, pandas u otra librería previa a correr scikit-learn. | VOLVER⤴️
TensorFlow
Una de las librerías más destacadas de TensorFlow es Keras. Keras está diseñado para ir construyendo la arquitectura de cada red neuronal por bloques, incluyendo redes convolucionales y recurrentes, que son las que permiten, junto a los bloques “más tradicionales”, entrenar modelos deep learning. | VOLVER⤴️
matplotlib, plotly, seaborn
plotly, en cambio, es una librería con una filosofía muy diferente, es infinitamente superior en cuanto a la interacción usuario-gráfico, pero tiene algunas limitaciones cuando tenemos que personalizar demasiado nuestro gráfico.
Lo que haremos a continuación es repasar algunas ventajas y desventajas de las dos librerías principales que estamos analizando, matplotlib y plotly.
💡 Hay varias otras librerías gráficas aparte de estas tres que no utilizaremos en nuestro sitio, pero para empezar a trabajar creemos que matplotlib, plotly y seaborn son excelentes opciones.
matplotlib
✅ Con muy pocas y simples líneas de código obtenemos gráficos, si sólo deseamos echar un vistazo a los datos es ideal.
✅ Todo puede ser configurado, ejes, colores, cantidad y espaciamiento de escalas por encima del track con varias curvas en un plot (por ejemplo), rastras de rocas y minerales, etc.
✅ Soporte. Foro muy grande y activo.
❌ La interacción en los gráficos es demasiado básica (zoom, ver valores mientras nos deslizamos por el gráfico, etc)
plotly
✅ Al igual que matplotlib, con muy pocas y simples líneas de código obtenemos gráficos.
✅ Muy buena calidad en los gráficos.
✅ Excelente interacción usuario y gráfico.
❌ Código cerrado, hay muchas cosas que todavía no se pueden configurar en los gráficos de plotly. Si a eso le agregamos que hay que esperar tiempo para que las sugerencias que hacen los usuarios entren en los realeses..
❌ Consume muchos recursos. Si los datasets con los que estamos trabajando son grandes, se hace a veces muy tedioso trabajar con los gráficos.
Bueno, ahora que sabemos un poco más sobre estas librerías, quizás podamos acomodarlas a nuestras necesidades. Por ejemplo, si deseamos graficar un scatter plot sencillo, donde los datasets no sean muy pesados (crossplot Densidad-Neutron), probablemente plolty sea una buena elección.
En cambio, si nuestro objetivo es un gráfico símil log combinado con varios tracks, varias curvas en cada track, áreas entre curvas pintadas, etc, deberemos utilizar matplotlib. | VOLVER⤴️
Les agradecemos su tiempo y esperamos fervientemente que hayan disfrutado este artículo. Si tienen alguna consulta, desean hacer algún comentario o sugerencia para mejorar el contenido, o simplemente indicarles qué les pareció este artículo, debajo pueden hacerlo.
Esperamos reencontrarlos en algún otro artículo del sitio. Hasta luego!
Tags
Recent Posts