Python libraries
Este es un blog de notas donde incluyo una lista de librerías Python o recursos Open Source que uso normalmente y/o que me gustaría probar. Son incluidos enlaces e información extra.
Librerías de uso común:
- Matplotlib
- Numpy
- Pandas –> best practises.
- Seaborn
- Scipy
- Click: sencilla librería que ayuda bastante en el control de los argumentos pasados a un Python script desde terminal y propriona un print customizable.
Interacción con OS
Automatic Data Analysis
- Pandas-Profiling: Ya lo he probado aqui.
- SweetViz: Es muy interesante por el report que devuelve. Ya lo he probado aqui.
- PandasGUI: Ya lo he probado aqui.
- dataprep: Ademas de ser una libreria para data preparation, tiene una herramienta EDA interesante. Ya lo he probado aqui.
Data preparation and Features engineering
- datacleaner: interesante librería que permite la preparación y limpieza de datos automáticamente mediante linea de comandos y Python scripting.
- dataprep: Ademas de ser una libreria para data preparation, tiene una herramienta EDA interesante.
Machine Learning
Pandas accelerator
- vaex: Pandas accelerator muy poderoso. Ya lo he probado aqui.
- Modin.Pandas: Pandas accelerator muy facil de usar.
Python accelerators
- Ray: It provides a simple, universal API for building distributed applications.
Timeseries
- jenkspy: detección de natural breaks en una serie temporal. Interesante este post en el que se compara el uso de esta librería con tools de Pandas.
Geography
- Geopandas: librería que mezcla lo mejor de Pandas con herramientas geoespaciales de gran utilidad.
NLP
- NLTK
- Spacy: Ya he trabajado con ella. La instalacion de los múltiples idiomas es muy sencilla. Incluye herramientas de procesado de texto pero lo mejor son las entities.
- gensim: Topic modelling.
- cleantext: Herramienta definitiva para limpiar texto con multiples opciones customizables. Ver este notebook.
- langdetect: Deteccion de idioma e incluso múltiples idiomas en el mismo texto. Ver este notebook.
- google: Librería para hacer web searching desde Python sin Google API credentials. Ver este notebook.
- newspaper: Libreria para scrappear articulos (noticias, entradas de blogs, etc), limpieza de texto y extracción de keywords y summary. Ver este notebook.
- AmpliGraph: It is library that predicts links between concepts in a knowledge graph.
Optimization
- DEAP: It is a novel evolutionary computation framework for rapid prototyping and testing of ideas. Recomendado por Jose Luis (Tessella).
Data generator
Data Scrapping
- Scrapy: Es la libreria de scrapping mas conocida. Para mi hay herramientas mas simples pero esta es muy buena automatizando.
- newspaper: Libreria para scrappear articulos (noticias, entradas de blogs, etc), limpieza de texto y extracción de keywords y summary. Ver este notebook.
Coding projects structure
- Cookiecutter DS: A logical, reasonably standardized, but flexible project structure for doing and sharing data science work._
Code testing
- Tox: It aims to automate and standardize testing in Python. It is part of a larger vision of easing the packaging, testing and release process of Python software.
Fuentes Open Source:
Repositorios personales Open Source como por ejemplo GitHub o incluso blogs de contribuidores desinteresados pueden ser una fuente interesante de ideas o codigos que nos pueden ser utiles. Esta es una lista de los que yo suelo seguir:
- Sebastian Rachka (GitHub): SUPERVISED LEARNING (pattern classification).
- David Ziganto (GitHub).
- Avik Jain (GitHub): 100 days of ML code.
- WillKoehrsen (GitHub): Data Analysis tools desarrolladas por este DS al que sigo en Medium.
Post interesantes:
- Random number generator from a histogram: posibles alternativas de Python snippets para un selecctor random de números en base a pesos proporcionados por un histograma.