Red de conocimiento informático - Material del sitio web - Cómo aprender Python correctamente para la ciencia de datos

Cómo aprender Python correctamente para la ciencia de datos

Autor | skura

Fuente | Desarrollador de IA

La mayoría de los aspirantes a científicos de datos comienzan con Python tomando un curso de programación para desarrolladores, y también comenzaron a resolver la programación en Python. desafíos similares a los del sitio web leetcode. Creen que uno debe estar familiarizado con los conceptos de programación antes de comenzar a analizar datos usando Python.

Manu Jeevan, un analista de datos senior, cree que esto es un gran error porque los científicos de datos usan Python para recuperar, limpiar, visualizar y construir modelos de datos en lugar de desarrollar aplicaciones de software. De hecho, para realizar estas tareas, debe concentrarse la mayor parte de su tiempo en aprender módulos y bibliotecas en Python. Él cree que el enfoque correcto para aprender ciencia de datos debería ser el siguiente, compilado por desarrolladores de IA.

Siga los pasos a continuación para aprender Python para la ciencia de datos.

Configuración del entorno de programación

Jupyter Notebook es un potente entorno de programación para desarrollar y presentar proyectos de ciencia de datos.

La forma más sencilla de instalar Jupyter Notebook en su computadora es instalarlo a través de Anaconda. Anaconda es la herramienta Python más utilizada para la ciencia de datos y viene preinstalada con todas las bibliotecas más populares.

Puedes explorar la publicación del blog titulada "Una guía para principiantes para instalar Jupyter Notebook usando la distribución Anaconda" (/better-programming/beginners-quick-guide-for-handling-issues-launching-jupyter-notebook - for-python-using-anaconda-8be3d57a209b) para aprender cómo instalar Anaconda. Al instalar Anaconda, elija la última versión de Python 3.

Después de instalar Anaconda, lea este artículo de Code Academy (/articles/how-to-use-jupyter-notebooks) para aprender a usar Jupyter Notebooks.

Aprenda solo los conceptos básicos de Python

Code Academy tiene un excelente curso sobre Python que dura aproximadamente 20 horas. No es necesario que actualice a la versión pro ya que su objetivo es simplemente familiarizarse con los conceptos básicos del lenguaje de programación Python. Dirección del curso: /learn/learn-python-3

NumPy y Pandas, excelentes recursos para aprender

Python es lento a la hora de procesar algoritmos computacionalmente intensivos y grandes cantidades de datos. Quizás se pregunte, ¿por qué Python es el lenguaje de programación más popular para la ciencia de datos?

La respuesta es que en Python es fácil descargar las tareas de procesamiento de números al nivel inferior en forma de extensiones C o Fortran. Esto es exactamente lo que hacen NumPy y Pandas.

Primero, debes aprender NumPy. Es el módulo más básico para la informática científica en Python. NumPy admite matrices multidimensionales altamente optimizadas, que son la estructura de datos más básica para la mayoría de los algoritmos de aprendizaje automático.

A continuación, debes aprender Pandas. Los científicos de datos pasan la mayor parte de su tiempo limpiando datos, lo que también se denomina disputa de datos.

Pandas es la biblioteca de Python más popular para manipular datos. Pandas es una extensión de NumPy. El código subyacente de Pandas hace un uso extensivo de la biblioteca NumPy. La estructura de datos principal de Pandas se llama marco de datos.

Wes McKinney, el creador de Pandas, escribió un gran libro llamado Python para análisis de datos (/Python-Data-Analysis-Wrangling-IPython-ebook/dp/B075X4LT6K). Puede aprender sobre Pandas y NumPy en los capítulos 4, 5, 7, 8 y 10 del libro. Estos capítulos cubren las funciones de NumPy y Pandas más utilizadas para trabajar con datos.

Aprenda a visualizar datos usando Matplotlib

Matplotlib es un paquete básico de Python para crear visualizaciones básicas. Debe aprender a crear algunos de los gráficos más comunes utilizando Matplotlib, como gráficos de líneas, gráficos de barras, diagramas de dispersión, gráficos de columnas y diagramas de caja.

Otra buena biblioteca de trazado construida sobre Matplotlib y estrechamente integrada con Pandas es Seaborn. En esta etapa, le recomiendo que aprenda rápidamente cómo crear gráficos básicos en Matplotlib en lugar de centrarse en Seaborn.

Escribí un tutorial de cuatro partes sobre cómo desarrollar gráficos básicos usando Matplotlib. Parte 1: dibujar gráficos básicos con Matplotlib (/analytics-vidhya/programming-with-databases-in-python-using-sqlite-4cecbef51ab9).

Antes de explorar la publicación de blog anterior, debes conocer los conceptos básicos de SQL. Hay un buen tutorial sobre SQL en Mode Analytics: Introducción a SQL (/analytics-vidhya/programming-with-databases-in-python-using-sqlite-4cecbef51ab9). Aprenda los conceptos básicos de SQL con su sección SQL básico, y todo científico de datos debería saber cómo usar SQL para recuperar datos de manera eficiente.

Aprenda estadísticas básicas relacionadas con Python

La mayoría de los aspirantes a científicos de datos pasan directamente a aprender conocimientos de aprendizaje automático sin aprender los conceptos básicos de estadística.

No cometa este error porque la estadística es la columna vertebral de la ciencia de datos. Además, muchos científicos de datos aprenden estadística sólo para aprender conceptos teóricos en lugar de conceptos prácticos.

Quiero decir, al practicar los conceptos, debes saber qué tipo de problemas se pueden resolver usando estadísticas y comprender qué desafíos se pueden resolver usando estadísticas.

Aquí tienes algunos conceptos estadísticos básicos que debes conocer:

Muestreo, distribución de frecuencia, media, mediana, moda, medida de variabilidad, base de probabilidad, prueba de significancia, desviación estándar, z -puntuación, intervalos de confianza y pruebas de hipótesis (incluidas las pruebas A/B)

Para aprender este conocimiento, hay un buen libro para leer: "Estadísticas prácticas para científicos de datos: 50 conceptos esenciales" 》(/ Estadística-Práctica-Datos-Científicos-Esencial/dp/9352135652).

Desafortunadamente, los ejemplos de código de este libro están escritos en R, pero muchas personas, incluido yo mismo, usamos Python.

Te recomiendo leer los primeros cuatro capítulos de este libro. Lea los primeros 4 capítulos de este libro para comprender los conceptos estadísticos básicos que mencioné anteriormente. Puede ignorar los ejemplos de código y simplemente comprender estos conceptos. Los capítulos restantes de este libro se centran principalmente en el aprendizaje automático. Discutiré cómo aprender el aprendizaje automático en la siguiente sección.

La mayoría de la gente recomienda usar Think Stats (/Think-Stats-Allen-B-Downey/dp/1449307116) para aprender estadísticas en Python, pero el autor de este libro enseña sus propias funciones personalizadas, en lugar de usar la biblioteca estándar de Python para explicar el conocimiento estadístico. Por lo tanto, no recomiendo este libro.

A continuación, tu objetivo es implementar los conceptos básicos aprendidos en Python. StatsModels es una biblioteca de Python popular para crear modelos estadísticos en Python. El sitio web StatsModels proporciona un excelente tutorial sobre cómo implementar conceptos estadísticos usando Python.

Como alternativa, puedes ver el vídeo de Ga?l Varoquaux. Le muestra cómo utilizar Pandas y modelos estadísticos para inferencias y estadísticas exploratorias.

Aprendizaje automático con Scikit-Learn

Scikit-Learn es una de las bibliotecas de aprendizaje automático más populares para Python. Su objetivo es aprender a implementar algunos de los algoritmos de aprendizaje automático más comunes utilizando Scikit Learn.

Deberías hacer algo como esto.

Primero, mira el curso de aprendizaje automático de Andrew Ng en Coursera (/Hands-Machine-Learning-Scikit-Learn-TensorFlow/dp/1491962291). Solo necesita leer la primera parte de este libro (aproximadamente 300 páginas), es uno de los libros de aprendizaje automático más prácticos.

Al completar los ejercicios de codificación de este libro, aprenderá a utilizar Python para implementar los conceptos teóricos que aprendió en el curso de Andrew Ng.

Conclusión

El último paso es realizar un proyecto de ciencia de datos que cubra todos los pasos anteriores. Puede encontrar un conjunto de datos que le guste, luego hacer preguntas comerciales interesantes y responderlas mediante análisis. Sin embargo, no elija un conjunto de datos genérico como Titanic. Puede leer "19 lugares para encontrar conjuntos de datos gratuitos para su proyecto de ciencia de datos" para encontrar un conjunto de datos adecuado (/scrape-yahoo-finance-stock-market-data/) para obtener datos en tiempo real y almacenarlos en un SQL. base de datos y luego utilizar el aprendizaje automático para predecir los precios de las acciones.

Si está buscando hacer la transición a la ciencia de datos desde otra industria, le recomiendo completar un proyecto que aproveche su experiencia en el dominio.

Con respecto a esto, escribí en mi publicación anterior del blog "Una guía paso a paso para la transición de su carrera a la ciencia de datos - Parte 1" (/2019/05/guide-transitioning-career-data-science-part-1.html ) Y mencionado en "Una guía paso a paso para la transición de su carrera a la ciencia de datos - Parte 2" (/2019/06/guide-transitioning-career-data-science-part-2.html).