Translate

Mostrando entradas con la etiqueta python anaconda. Mostrar todas las entradas
Mostrando entradas con la etiqueta python anaconda. Mostrar todas las entradas

domingo, 14 de abril de 2019

Breve resumen Python para análisis de datos - librerías

Tras tres annos usando Python practicamente a diario para análisis de datos creo que ya puedo dar algunos consejos para analistas que quieran aprender el lenguaje para hacer análisis de datos.

Al principio puede parecer un poco overhelming toda la información que pueda aparecer en Internet, sin embargo hay determinadas librerias que vas encontrar en todas partes y que te permitirán hacer el 80% de tu trabajo.

Qué librerías en Python son las más usadas para análisis de datos y Machine Learning

Pandas, los cubiertos del análisis de datos

La primera libreria que deberías aprender a usar para empezar a hacer cosas es Pandas
A la hora de usar pandas debes pensar siempre en una spreadsheet u hoja de calculo con formato tabular.Manipulas datos en  dos dimensiones. tienes filas y columnas. Esta librería tiene diferentes funciones contruidas que te haran todo más facil, al estilo de funciones de excel pero más rápido y fácil de usar y procesar.

Pandas te permite manipular y limpiar los datasets de una forma fácil. La libreria Pandas usa dos tipos de estructuras de datos de tipo objet( es decir, complejos). Dataframes (el más usado) y Series.

Además puedes crear pivot table para presentar tus resultados. En este caso Pandas te permite además, si quieres usar índices (index) para que sea más fácil. El index hace que la curva de aprendizaje sea un poco más larga, así que mi recomendación es ir haciéndote a ellos poco a poco.

Si eres nuevos en Python para análisis de datos deberías empezar entendiendo como funciona Pandas, ya que los usarás prácticamente cada vez que hagas un análisis.

Numpy para estructuras matrices y procesimiento matemático

El padre de Pandas es Numpy. De hecho Pandas está construida usando Numpy. Muchas veces en pandas se tarda mucho en hacer cálculos y entonces es más eficiente (la operación se va a procesar antes) al usar Numpy. Esto sobre todo es debido a un tipo de estructura de datos de tipo objeto que se llama Narray.

Scipy , añade analísis estadístico a tu análisis

Con las dos librerias de arriba ya podrías empezar a trabajar haciendo análisis descriptivos. Sin embargo,  vas a necesitar tirar de análisis estadístico en algún momento- Scipy es un librería. Pongamos que necesitas hacer una regresión o que estás analizando A/B tests. Scipy te ayuda con ello.

Scikit-learn , añade Machine Learning de forma fácil. 

Esta librería ha sido tendencia estos últimos años debido a que es usada por Data Scientifist para hacer su trabajo con un montón de algoritmos contruidos para no tener que preocuparte de nada.
Está escrita sobre Numpy y Scipy. Además tiene funciones para entrenar los datos (train) y crear modelos. Es muy fácil de usar y si sabes lo que estás haciendo (matematicamente hablando) es muy eficiente y limpia para aplicar Machine Learning.

Matplotlib , visualiza tus resultados

Además de esto tienes librerias para visualización de datos, siendo matplotlib la más usada. Yo no soy muy fan de ella y prefiero exportar los datos en csv y llevarme los datos a PowerBi o Tableau, pero me matplotlib ha sacado de algún apuro alguna vez, debo confesar. Aquí puedes ver todos los tipos de gráficos que puedes hacer con ella https://matplotlib.org/3.2.1/gallery/index.html


Como usar las librerías en Python

Una vez que tenems claro las librerias que queremos usar, vamos a pasar a ver como se usan.
Como en todos los lenguajes de programación deberíamos tenerlas instaladas (para no complicar mucho esto )

Python es un lenguaje muy flexible, y por ello y para que todos podemos entendernos, existen una convenciones que todo el mundo suele seguir a la hora de llamar a estas librerías.

Una vez tenemos instaladas nuestras librerías podemos usar llamar a una librería o sólo a la parte que creamos que vamos a necesitar. A esto se le llama importar.

Si queremos llamar llamar a toda la librería de pandas diremos. Si tenemos muchas librerías en memoría va a hacer más pesado el programas. Además tener sólo lo que vamos a necesitar, va a hacer que focalicemos en lo que estamos haciendo y una vez volvamos a leer nuestro código (o el del que leyó el programa va a ser más fácil de entender que está haciendo).

Ya que pandas es la que más usamos la importaremos entera como

import pandas as pd

Ahora imagina que queremos hacer una regresión. Esto sólo va a pasar una vez en nuestro programa. En ese caso es mucho importar sólo lo que vamos a usar. Por ejemplo diremos de sklearn, carpetita modelos lineales usaremos regresión lógística, de métricas solo queremos estas, etc

from sklearn.linear_model import LogisticRegression
from sklearn.model_selection import train_test_split
from sklearn.metrics import roc_auc_score, accuracy_score, f1_score, confusion_matrix, classification_report

Convenciones para usar las diferentes librerías


Como comentaba anteriormente hay convenciones para llamar a estas librerías, aunque si qusieras llamarlas de cualquier otra forma Python seguiría funcionando.

Por el bien de la salud mental de tus compañeros y de la tuya misma sigue estas convenciones guilo-guiño

En caso de pandas (pd), numpy(np) y matplot(plt), puedes importar las librerías enteras. En cambio no deberías importar enteras ni Scipy, ni Scikit learn, sino sólo los módulos que quieras usar. Esto quedaría así en tu código como ejemplo

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

y para las otras dos librerías sería en plan ejemplo

from scipy.stats import norm, binom
from sklearn.linear_model import LogisticRegression

Espero esto sirva de introdución en tu viaje en el aprendizaje de Python para analisis de datos

domingo, 13 de diciembre de 2015

Año nuevo - cursos nuevos

Hola gente anónima que pulula por Internet

He decidido retomar el blog con la idea de automotivarme (ese era el fin de este blog...)  con los nuevos cursos que me he apuntado y aunque en principio iban a ser un par, bueno, creo que me he pasado un poco. El saber no ocupa lugar, pero si mucho tiempo.

Por ello me he tomado mes y medio para ponerme al día en todo lo nuevo relativo al análisis digital antes de seguir con mi carrera profesional con la ideas de equiparme con nuevas herramientas que poder aplicar a mi trabajo.

Objetivo principal:

Aprender nuevas herramientas, buenas prácticas y métodos data-driven que aplicar al Digital Marketing/Business hasta el 15 de Febrero.

Objetivos específicos:

1.Conseguir certificados que sean reconocibles a nivel internacional
2.Aprender metodología (frameworks) para poder aplicar al análisis de datos en Marketing/Ecommerce.
3Realizar análisis estadísticos con lenguajes de programación específicos del análisis de datos.
4.Aprender nuevas formas de poder comunicar los insights que encuentro a personas que no saben sobre datos/estadísticas.


1. Conseguir certificados que sean reconocible a nivel Internacional

Motivación: Uno de los problemas que supongo que como yo tienen las personas que llevan tiempo trabajando en todo lo relacionado con lo digital ,es que ningún plan de estudios de posgrado realmente satisface los intereses y el coste (económico/de tiempo)-beneficio. Muchos de estos programas no cumple las expectativas a nivel de formación- contenido práctico y casos de usos. Ello, unido a que  la información que se da en estos,se va quedando anticuada de un año para otro y que luego en según que empresa trabajan con unos programas u otros hace muy difícil que me decida por ninguno de ellos.


- Conseguir la Google Adwords Individual Certification
Llevo trabajando con Adwords al menos dos años, no debería ser muy dificil
DONE -> https://www.google.com/partners/?q=google%20partners#i_profile;idtf=102341943869267004654;
- Renovar Google Analytics Individual Certification
Me caducó en Agosto, pero no se lo digáis a nadie.

- Conseguir al menos un certificado de Market Motive.
Market Motive es una plataforma de aprendizaje cuyo cofundador es Avisnash Kaushik, uno de los cerebro de la analítica web en el mundo. Junto a otras cabezas pensantes de otras disciplinas ha creado esta plataforma. Sin duda, aprobar alguno de exámenes de sus materias va a tener mérito.


Métricas:
Certificado Adwords: APROBADO (Hurrah!)
Certificado Analytics
Certificado Market Motive


2.Aprender metodología (frameworks) para poder aplicar al análisis de datos cuantitativo en Marketing/Ecommerce.

Para ello estoy inscrita en varios de Marketing Analítico. Los que están en verde son los que cumplen con este fin
CURSOSPRIORIZATIONSTARTINGDEADLINEPLATFORMUNI
Customer Analytics104/01/201615/02/2016CourseraWharton
Using Databases with Python311/01/201622/02/2016CourseraMichigan
Data Visualization and Communication with Tableau211/01/201622/02/2016CourseraDuke
Data Analysis Tools611/01/201615/02/2016CourseraWesleyana
Econometrics425/01/201624/03/2016CourseraRotterdam
Marketing analysis525/01/201625/03/2016CourseraESSES
A/B testing7 17/01/2016UdacityGoogle
Métricas:
Obtener certificado

3. Realizar análisis estadísticos con lenguajes de programación específicos

Esta pregunta está relacionado con lo anterior, pero los cursos que más focalizan en el uso de programas son los que están en naranja.

Hace ya un tiempo que empecé a usar R para algunas tareas muy específicas, pero a la hora de usarlo con todo su potencial aplicado a  tengo siempre que depender de que alguien haya hecho un repositorio. Muchas empresas hacen mucho más fácil utilizar la API por medio de Python. Por otra parte tengo que repasar SQL, que es un lenguaje que estudié en DAI

Luego tenemos SAS y SPSS, ambos software propietario.SAS no se puede utilizar sin licencia. He sido usuaria de SPSS durante toda la carrera y posteriromente analizando encuestas de satisfacción y no tengo problemas en usar los estadísticos mas básicos y la matriz.

Así que como mucho otr@s me pregunto ¿R o Python? Si tú también te lo preguntasAquí una infografía muy apañada
Bueno, parece que en principio los dos, ya que los cursos marcan que lenguajes habría que usar.
Métricas:
Obtener certificados

4.Aprender nuevas formas de poder comunicar los insights que encuentro a personas que no saben sobre datos/estadísticas.

Cuando trabajaba haciendo reporting, una de las preguntas que nos hacíamos a primero de mes, tras ir a contra reloj actualizando los reports era: ¿miran realmente los clientes los datos o solamente se dedican a mirar los rankings en SEO y el dinero gastado? Más tarde yo misma he sufrido por parte de la directiva de la empresa el sentimiento de"¿De verdad nadie ve la tendencia? Sí está ahí en la tabla!"Y me costó ir de tablas muy específicas, a menos específicas; de ahí a gráficos completos; más tarde a gráficos de barras... Bueno, hay que comunicarse con todos los stakeholder así que un curso de tableau, que ya había usado anteriormente, me viene al pelo.
Métricas:
Obtener certificado


Así que una vez todo sumarizado: 
HERE WE GO.