¿Qué lenguaje es mejor usar para el aprendizaje automático (R o Python)?

Comparemos los lenguajes Python y R en diferentes criterios, uno por uno:

  • Disponibilidad y costo

Ambos son completamente gratis

  • Facilidad de aprendizaje

R tiene la curva de aprendizaje más pronunciada, por lo que se hace necesario aprender la codificación. Es un lenguaje de bajo nivel, por lo que los procedimientos simples pueden requerir códigos más largos. Por otro lado, Python es conocido por su simplicidad.

  • Manejo de datos

Los cálculos de R están limitados a la cantidad de RAM en una PC de 32 bits

  • Capacidades Gráficas

R tiene capacidades gráficas avanzadas

  • Avance en herramientas

Ambos idiomas son abiertos en naturaleza y contribuciones. Entonces, en los últimos desarrollos, hay más posibilidades de error.

  • Velocidad

R lento y está diseñado para facilitar el análisis de datos y las estadísticas. Pero esto hace que la vida en la computadora sea más difícil. Necesitamos definir cómo funcionan las implementaciones. Además, R está mal escrito.

Las visualizaciones son criterios importantes para elegir el software de análisis de datos.

Python tiene algunas bibliotecas de visualización agradables como Seaborn, la biblioteca de visualización interactiva Bokeh, Pygal, etc., que hace una gran diferencia entre Python y R

  • Ámbito laboral

Python y R son buenos para empresas nuevas y empresas que buscan eficiencias de costos.

  • Servicio de atención al cliente

Ninguno de estos tiene esta facilidad. En el momento de cualquier problema, estás solo.

Discutamos algunos pros y contras de Python y R por separado

Python Pros

  • Disponibilidad y estabilidad gratuitas.
  • Fácil integración con extensible usando C y Java
  • Admite múltiples sistemas y plataformas
  • Fácil de aprender incluso para un desarrollador novato
  • Amplio de recursos disponibles

Contras de Python

  • Grupo comparativamente más pequeño de desarrolladores de Python
  • Rendimiento del software
  • No es bueno para el desarrollo móvil
  • Limitaciones de acceso a la base de datos
  • Velocidad más lenta que C o C ++

R Pros

  • Paquete completo de análisis estadístico . Las nuevas ideas aparecen principalmente en R
  • Fuente abierta. Cualquiera puede usarlo
  • Apto para GNU / Linux y Microsoft Windows. También tiene plataformas cruzadas que pueden ejecutarse en muchos sistemas operativos.
  • Cualquiera puede corregir errores y mejorar el código

R contras

  • La calidad de algunos paquetes no es buena
  • Si algo no funciona, no hay nadie ante quien podamos quejarnos
  • Las personas dedican su propio tiempo a desarrollarlo
  • R puede consumir toda la memoria debido a su gestión de memoria

Estoy compartiendo algunos enlaces con usted para comprender mejor el escenario de Python y R y comenzar a aprenderlo.

  1. Características de Python
  2. Aplicaciones de Python
  3. Oportunidades laborales en Python
  4. Python para ciencia de datos
  5. Tutorial de Python para principiantes
  6. Importancia de la programación R
  7. Alcance futuro de R
  8. Aplicaciones de R
  9. Tutorial de R Data Analytics
  10. Herramientas de análisis de datos de R

Espero que la respuesta sea informativa.

Siga mi cuenta para leer mis respuestas habituales en Data Science.

TODO LO MEJOR…

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 es fácil de aprender, es casi como leer inglés (para ponerlo en una nota más clara) pero R requiere más esfuerzo de estudio inicial. 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 las manos hacia abajo. 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 usar un solo idioma. Los usuarios comerciales (análisis de marketing, análisis minorista) generalmente utilizan lenguajes de programación estadística como R, ya que con frecuencia realizan prototipos rápidos y crean visualizaciones (que se hace más rápido en R que en Python).

Estoy seguro de que Python es el mejor.

Python tiene una gran colección de bibliotecas de aprendizaje automático superiores, y brilla especialmente si quieres probar el aprendizaje profundo. Scikit learn, Tensorflow, Pytorch, etc. son geniales. También creo que Python escala mejor que R cuando se trata de construir código de aprendizaje automático listo para la producción.

En mi opinión, el lenguaje también es más fácil de aprender que R. También tiene las ventajas adicionales de ser un lenguaje de propósito general en lugar de R, que es más una herramienta de análisis y exploración de datos estadísticos que un lenguaje completo. Esto no quiere decir que R sea malo, su gran número de algoritmos estadísticos y excelentes herramientas de visualización son realmente muy útiles. Pero cuando se trata de aprendizaje automático, diría que Python gana.

Si quieres aprender Python, puedes aprender desde aquí:

  • La Biblia de Python ™ | Todo lo que necesitas programar en Python

Pero le sugiero que aprenda las bibliotecas de Python como Pandas, NumPy, SciPy, Scikit Learn, Matplotlib. .

Puedo sugerirle las mejores bibliotecas de Python para el curso ML.

  • Python for Data Science y Machine Learning Bootcamp

¡Aprenda a usar NumPy, Pandas, Seaborn, Matplotlib, Plotly, Scikit-Learn, Machine Learning, Tensorflow y más!

Aquí tienes que aprender

  • Programando con Python
  • NumPy con Python
  • Uso de marcos de datos de pandas para resolver tareas complejas
  • Use pandas para manejar archivos de Excel
  • Raspado web con python
  • Conecte Python a SQL
  • Use matplotlib y seaborn para visualizaciones de datos
  • Use plotly para visualizaciones interactivas
  • Aprendizaje automático con SciKit Learn, que incluye:
  • Regresión lineal
  • K vecinos más cercanos
  • K significa agrupamiento
  • Árboles de decisión
  • Bosques al azar
  • Procesamiento natural del lenguaje
  • Redes neuronales y aprendizaje profundo
  • Máquinas de vectores de soporte
  • ¡y mucho, mucho más!

Todo lo mejor .

Sé tanto el lenguaje como el uso de R mucho en comparación con Python. El 100% de mi Machine Learning se realiza en R. Comenzando desde el desguace web hasta los Alogs de Machine Learning. He hecho todo en R. En R tienes +11000 bibliotecas. No hay nada en R que no puedas hacer … Si no puedes hacerlo en R, mejor digo que no sabes R

Cuando se trata de rendimiento. Ambos son un pequeño espectáculo en comparación con C, C ++, Julia, etc.

Siendo personas muy transparentes prefieren Python que R. La única razón es; la persona que lo contrata usa Python que R. Entonces, R se desvanece un poco.

Sin embargo, hay muchas organizaciones que dicen. use Python / RI quiere que se haga el trabajo.

Pyton es como Python, que es grande y elegante.

R es como FOX muy cuchilla

Python es muy fácil de aprender. Si no tiene buena mano en R, puede sentirse frustrado.

R es muy bueno en el análisis de datos. La mayoría de las Startup están eligiendo Python ya que las bibliotecas están creciendo rápidamente. cuando se trata de trabajar ambos son buenos, Python es más factible que R

El principal problema con R es su consistencia. Los algoritmos son proporcionados por terceros, lo que los hace relativamente inconsistentes.

La disminución resultante en la velocidad de desarrollo proviene de tener que aprender nuevas formas de modelar datos y hacer predicciones con cada nuevo algoritmo que use. Cada paquete requiere una nueva comprensión. La inconsistencia también se aplica a la documentación, como R ‘ s La documentación es casi siempre incompleta.

Sin embargo, si se encuentra en un entorno académico y necesita una herramienta para el análisis de datos, es difícil discutir con la elección de R para la tarea. Para uso profesional, Python tiene más sentido. Python se usa ampliamente en toda la industria y, aunque R se está volviendo más popular, Python es el lenguaje con mayor probabilidad de permitir una colaboración fácil. El alcance de Python hace que sea fácil recomendarlo no solo como un lenguaje de aprendizaje automático y de propósito general, sino también con sus importantes paquetes tipo R, como una herramienta de análisis de datos.

Si aún no conoce R , aprenda Python y use RPy2 para acceder a la funcionalidad de R. Obtendrá el poder de dos idiomas en uno, y Python está listo para la producción porque la mayoría de las empresas tienen sistemas de producción listos para Python. Esto no es cierto para R. Una vez que aprendes RPy2, el salto a R puro no es muy desalentador, pero moverse en la dirección opuesta es considerablemente más difícil.

Tanto Python como R tienen excelentes paquetes para mantener algún tipo de paridad con el otro, independientemente del problema que intente resolver.

Hay tantas distribuciones, módulos, IDEs y algoritmos para cada uno que realmente no puede fallar tampoco. Pero si está buscando un lenguaje de programación flexible, extensible y multipropósito que también se destaque tanto en el aprendizaje automático como en el análisis de datos, Python es la opción clara.

Tanto R como Python son excelentes opciones. En mi opinión, deberías exponerte a un poco de ambos. De esa manera, no se excluirá de ningún trabajo en el que la pila de tecnología dependa más de uno que del otro.

A partir de 2017, R y Python son aproximadamente igualmente populares entre los científicos de datos. Sin embargo, Python está ganando tracción rápidamente. Especialmente en la industria tecnológica.

Mi sugerencia es que uno de ellos sea su idioma principal y el otro la segunda opción.

Si desea centrarse en las estadísticas y el análisis y ser más del tipo científico de datos, R podría ser un poco mejor como idioma principal.

Si desea centrarse en la construcción de sistemas y ser más del tipo de ingeniero de aprendizaje automático, Python probablemente debería ser su primera opción.

Pitón

¿Por qué? Con su comunidad grande y sólida, es uno de los primeros lenguajes en obtener una nueva implementación de algoritmos ML más rápidos junto con los últimos marcos ML. El marco existente admite el procesamiento de CPU, GPU o TPU, lo que es realmente útil si está planeando un aprendizaje profundo. También tiene una de las mejores colecciones de bibliotecas externas. Nombra un algoritmo, y es muy probable que haya una biblioteca para él en Python. Su comunidad también es bastante activa, ves actualizaciones periódicas con mejoras de optimización.

Una ventaja importante de Python es que no se limita solo a ML. Fue diseñado principalmente para secuencias de comandos, por lo que contiene una gran cantidad de funciones incorporadas para manejar textos, fecha y hora, bits, aleatoriedad, etc. Es más un lenguaje modular, instala un paquete y se convierte en un animal diferente en sí mismo. Por nombrar algunos, instale numpy para manejar cálculos matemáticos complejos; instale scikit-learn para manejar la mayoría de los algoritmos de ML; instalar keras para diseñar y entrenar una red neuronal, etc. Python es lo que es debido a su gran colección de paquetes que son simplemente increíbles.

Salud.

Prefiero Python

Python tiene una gran colección de bibliotecas de aprendizaje automático superiores, y brilla especialmente si quieres probar el aprendizaje profundo. Scikit learn, Tensorflow, Pytorch, etc. son geniales. También creo que Python escala mejor que R cuando se trata de construir código de aprendizaje automático listo para la producción.

En mi opinión, el lenguaje también es más fácil de aprender que R. También tiene las ventajas adicionales de ser un lenguaje de propósito general en lugar de R, que es más una herramienta de análisis y exploración de datos estadísticos que un lenguaje completo. Esto no quiere decir que R sea malo, su gran número de algoritmos estadísticos y excelentes herramientas de visualización son realmente muy útiles. Pero cuando se trata de aprendizaje automático, diría que Python gana.

El aprendizaje automático y el análisis de datos son dos áreas donde el código abierto se ha convertido casi en la licencia de facto para nuevas herramientas innovadoras. Tanto los lenguajes Python como R han desarrollado ecosistemas robustos de herramientas y bibliotecas de código abierto que ayudan a los científicos de datos de cualquier nivel de habilidad a realizar más fácilmente el trabajo analítico.

Python se puede usar de manera efectiva como herramienta de análisis de datos, y R tiene suficiente flexibilidad para hacer un buen trabajo en el aprendizaje automático. Hay una multitud de paquetes para ambos idiomas que buscan replicar la funcionalidad del otro. Python tiene bibliotecas para aumentar su capacidad de inferencia estadística y R tiene paquetes para mejorar su precisión predictiva.

Lee mas:

Seré tan breve como pueda ser.

R es principalmente un lenguaje de análisis de datos. Si el big data es el interés de uno, R, Hadoop y RHadoop son las tecnologías para aprender.

Para el aprendizaje automático, hay varias API de Python disponibles. Caffe, Theano, Torch y Tensorflow son algunos de los más populares.

El futuro de ML es claramente Tensorflow. Está construido por Google para ML y está construido con un propósito. Sugiero encarecidamente que se familiarice con la sintaxis de Python y avance a aprender los fundamentos de TF. El sitio web oficial de TensorFlow tiene excelentes tutoriales y es el mejor lugar para comenzar. Hay un tutorial en YouTube del Sr. Martin Gorner que me ayudó mucho con lo básico. Sugiero que lo busques. Gracias por el A2A. ¡Feliz aprendizaje!

Ambas son buenas elecciones. Yo diría que depende de lo que estés haciendo:

  1. Si está buscando prototipos rápidos, creo que R sería una opción superior. Es más rápido que Python para un rápido análisis y limpieza de datos.
  2. Si está buscando escribir un código de producción más estable, elegí Python ya que R es ligero en el manejo de errores y puede ser una pesadilla para mantener.
  3. Si está haciendo un aprendizaje profundo, elegiría Python ya que los marcos DL parecen más avanzados en Python. Pero debo decir que no he probado R para esto, así que podría estar equivocado.

R es más lento que Python, pero es mejor para las estadísticas. Por lo general, el código de nivel de producción para el aprendizaje automático está escrito en Python y no en R, pero R tiene sus propias ventajas, quizás pueda usar ambos para aprender el aprendizaje automático, pero aprender ML en Python le da una ventaja

Tanto R como Python son los lenguajes más preferidos para Machine Learning y Data Science .

Los siguientes son algunos puntos positivos de ambos idiomas: –

  1. R
  • Es un lenguaje de programación de código abierto.
  • Es lo mejor para trabajar en datos organizados.
  • Fácil de trabajar

2. Python

  • También es un lenguaje de código abierto.
  • Es lo mejor para trabajar en datos no organizados.

Ahora lo principal: –

Si tiene que trabajar en datos estadísticos u organizados, entonces debería preferir R, y si tiene que trabajar en datos no organizados, entonces debería usar Python .

¡Todo lo mejor!

Gracias por leer !

R tiene bibliotecas bastante buenas, pero creo que Python realmente brilla para el aprendizaje automático. Scikit-learn es una biblioteca hermosa, con una sintaxis muy fácil y consistente con buenos valores predeterminados. Excelente para un principiante. La sintaxis de Python en general es más clara y está diseñada para facilitar la lectura. También será más fácil convertir ese código en escala de producción si lo usa para negocios.

En mi opinión, Python. Python tiene bibliotecas y herramientas tan buenas, si no mejores, y una curva de aprendizaje más pequeña en comparación con R. Además, al ser un lenguaje de propósito general, Python sería útil incluso fuera del dominio del aprendizaje automático. También se puede usar en máquinas más pequeñas (como Raspberry pi), por lo que es una opción ideal para la programación de IoT, lo que le permite utilizar sus programas en sus proyectos de IoT.

Tanto la programación en Python como la R tienen sus propias ventajas. Personalmente prefiero R, pero para ser honesto, R es más una herramienta estadística que no tiene ciertas características como el Reconocimiento de imágenes y otras cosas. Por otro lado, python es un lenguaje más poderoso y tiene algoritmos integrados para casi todos los conceptos de aprendizaje automático. Entonces, ¡diría que Python sería una mejor opción!

Si eres nuevo en programación y vienes de Matlab, te sugiero PYTHON, que es un lenguaje de programación de propósito general. Enumeré el estudio de caso para ambos en ML aquí.

Daría mi voto a Python. Es bastante fácil de entender y también un lenguaje bastante versátil según yo.

Python también le dará una ventaja superior si desea seguir su carrera en el aprendizaje automático en el futuro.

Todo lo mejor.

Sigue codificando; sigue creciendo.

Los expertos han respondido esto maravillosamente en Python vs R para el aprendizaje automático

Prefiero R, porque tiene más paquetes relacionados con las ramas de las matemáticas que uso. Python es bueno para algunas cosas de aprendizaje profundo y scikit-learn, pero no he encontrado tan buenos solucionadores en otras áreas de las matemáticas aplicadas como R / Matlab.

More Interesting

¿Quién ha explorado las aplicaciones del modelo Word2vec en datos que no sean lenguajes naturales?

¿Cuál crees que es la razón detrás de la asociación de Microsoft y Amazon en la tecnología de red neuronal llamada 'Gluon'?

¿Se puede extraer información significativa de datos hash para el aprendizaje automático?

¿Qué son las unidades recurrentes cerradas y cómo se pueden implementar con TensorFlow?

¿Por qué la traducción automática neuronal a nivel de caracteres es más difícil que la traducción automática neuronal a nivel de palabra?

¿Existe algún proyecto de código abierto que implemente algoritmos de aprendizaje profundo que aproveche la enorme potencia informática paralela de la GPU?

¿Cuáles son los requisitos previos para comenzar todo este aprendizaje automático, procesamiento del lenguaje natural, aprendizaje profundo, etc.?

¿Qué significa el aprendizaje automático?

¿Cuál es la distribución condicional completa?

¿Cuáles son algunos buenos libros / recursos para que un principiante obtenga una buena introducción al aprendizaje automático?

¿En qué áreas podría el aprendizaje automático ayudar a las personas a tomar decisiones imparciales?

¿Cuál es la diferencia entre un sistema experto y el aprendizaje automático?

¿Es un árbol de decisión solo un nombre elegante para una secuencia de declaraciones if-else-if-else -if-else?

¿Qué estrategia usaste para resolver el juego 2048? ¿Por qué?

¿Cuál es el mejor instituto en Bangalore para aprendizaje automático, inteligencia artificial y aprendizaje profundo (necesita práctica)?