¿Con qué lenguaje de programación debo comenzar para la ciencia de datos, considerando que soy nuevo en ambos?

Algunas diferencias realmente importantes a tener en cuenta al elegir R o Python sobre el otro:

  • El aprendizaje automático tiene 2 fases. Fase de construcción de modelos y predicción. Por lo general, la construcción del modelo se realiza como un proceso por lotes y las predicciones se realizan en tiempo real . El proceso de construcción del modelo es un proceso de cómputo intensivo, mientras que la predicción ocurre en un santiamén. Por lo tanto, el rendimiento de un algoritmo en Python o R realmente no afecta el tiempo de respuesta del usuario. Python 1, R 1.
  • Producción: La verdadera diferencia entre Python y R radica en estar listo para la producción. Python, como tal, es un lenguaje de programación completo y muchas organizaciones lo usan en sus sistemas de producción. R es un software de programación estadística favorecido por muchos académicos y debido al aumento en la ciencia de datos y la disponibilidad de bibliotecas y al ser de código abierto, la industria ha comenzado a usar R. Muchas de estas organizaciones tienen sus sistemas de producción en Java, C ++, C #, Python, etc. Entonces, idealmente, les gustaría tener el sistema de predicción en el mismo idioma para reducir los problemas de latencia y mantenimiento. Python 2, R 1.
  • Bibliotecas: Ambos idiomas tienen bibliotecas enormes y confiables. R tiene más de 5000 bibliotecas que atienden a muchos dominios, mientras que Python tiene algunos paquetes increíbles como Pandas, NumPy, SciPy, Scikit Learn, Matplotlib . Python 3, R 2.
  • Desarrollo: Tanto el lenguaje son idiomas interpretados. Muchos dicen que Python tiene una buena curva de aprendizaje, es casi como leer inglés (para ponerlo en una nota más clara) pero R tiene la reputación de tener una curva de aprendizaje más pronunciada. Además, ambos tienen buenos IDEs (Spyder, etc. para Python y RStudio para R). Python 4, R 2.
  • Velocidad: el software R inicialmente tuvo problemas con cálculos grandes (por ejemplo, como multiplicaciones de matriz nxn). Pero, este problema se aborda con la introducción de R por parte de Revolution Analytics. Han reescrito operaciones intensivas de cálculo en C, que es increíblemente rápido. Python siendo un lenguaje de alto nivel es relativamente lento. Python 4, R 3.
  • Visualizaciones: en ciencia de datos, con frecuencia tendemos a trazar datos para mostrar patrones a los usuarios. Por lo tanto, las visualizaciones se convierten en un criterio importante para elegir un software y R mata completamente a Python a este respecto. Gracias a Hadley Wickham por un increíble paquete ggplot2. R gana sin dudas. Python 4, R 4.
  • Manejo de Big Data: una de las limitaciones de R es que almacena los datos en la memoria del sistema (RAM). Por lo tanto, la capacidad de RAM se convierte en una restricción cuando maneja Big Data. Python funciona bien, pero diría que, ya que tanto R como Python tienen conectores HDFS, aprovechar la infraestructura de Hadoop proporcionaría una mejora sustancial del rendimiento. Entonces, Python 5, R 5.

Entonces, ambos idiomas son igualmente buenos. Por lo tanto, dependiendo de su dominio y el lugar donde trabaje, debe elegir inteligentemente el idioma correcto. El mundo de la tecnología generalmente prefiere un solo idioma. Los usuarios de negocios (análisis de marketing, análisis minorista) generalmente utilizan el lenguaje de programación estadística R, ya que con frecuencia realizan prototipos rápidos y crean visualizaciones, lo que es más rápido en R.

Como eres nuevo en la programación, ve con R. No es un lenguaje de programación general completo per se, sino más bien un lenguaje específico de dominio que en inglés simple significa que R es más fácil de entender para las personas que no son de programación.

En caso de que encuentre dificultades para comprender la programación de R después de, por ejemplo, 5 meses, muévase a Python con este libro: Aprenda Python de la manera difícil – zed shaw

Una vez que tenga la sensación de programación, puede pasar fácilmente a cualquier otro lenguaje de programación. Luego viene el debate sobre qué idioma elegir para el análisis de datos en función de sus requisitos, por ejemplo.
1. Se requiere mucha compatibilidad con la biblioteca: Python
2. Visualizaciones: d3.js (JavaScript)
3. Velocidad, como muchísima velocidad: C ++ / C
4. Trabajo estadístico / matemático: R

Nuevamente, enfatizaré que la programación de aprendizaje es el desafío frente a usted que tomará algún tiempo. Sea paciente con esto, lleva un año acostumbrarse a la programación.

No caigas en el enigma de cuál es el mejor idioma, elige uno y comienza a trabajar.

More Interesting

¿Cómo es ser un científico de datos en Instagram?

¿Cuál es el mejor curso en línea gratuito para ciencia de datos / aprendizaje automático como principiante?

Cómo construir y mantener una hoja de ruta de pruebas A / B

Cómo construir una plataforma de análisis para compartir datos con terceros

Estoy en mi último año como estudiante de informática. ¿Qué pasos debo tomar para conseguir un trabajo en Data Science?

¿Es obligatorio para un aspirante a científico de datos conocer las técnicas de manejo de Big Data?

¿Necesito ser un analista de datos para obtener un trabajo en el campo de aprendizaje automático?

Cómo explicar la 'ciencia de datos' usando un ejemplo

¿Qué significa un modelo en analítica y aprendizaje automático?

¿Qué herramientas usan los científicos de datos para ver y seleccionar datos de archivos CSV?

¿Qué tan difícil es obtener la admisión para una maestría en ciencias de datos en una buena universidad en los Estados Unidos?

¿Cuáles son algunos de los mayores problemas que las herramientas de Big Data y visualización de datos pueden resolver para los participantes del mercado financiero?

¿Qué es mejor: una maestría en ciencia de datos en la UCL (Univ. College London) o una maestría en estadística en la Universidad de Boston?

¿Por qué hay muchos módulos en el ecosistema hadoop en lugar de un solo módulo?

Quiero ser un científico de datos. ¿Qué tipo de trabajo puedo hacer para mi tesis después de aprender Hadoop?