;

Full width home advertisement

Tutoriales

Programación

Post Page Advertisement [Top]


“Escoger la herramienta nunca debe ser el  problema principal a resolver”


Fuente: http://www.cooladata.com/blog/python-vs-r-whats-right-for-you/

Advertencia: solo llevo un año de experiencia en el mundo de la ciencia de datos y  parte de lo que escribiré viene de lo que he aprendido en ese tiempo, pero  la mayor parte de este artículo viene de comentarios y artículos leídos por el autor que hablan del mismo tema.   Al final dejare algunos enlaces interesantes para que puedan ampliar más.


Por principio, se dice que R tiene mayor ventaja al ser usado para resolver tareas  profundamente matemáticas.         En cambio, Python es mucho mejor para tareas que involucran programación en general.   A la hora escoger uno,  es mejor utilizar el lenguaje que te ayude a terminar una tarea de la forma más rápida y  óptima.

En las comunidades  y foros sobre estadísticas  usan mayoritariamente R.  Por lo tanto, hay bastante documentación y soporte a la hora de trabajar con datos.   Puedes encontrar muchas librerías/paquetes que pueden realizar toda clase de operaciones matemáticas y estadísticas realmente avanzadas.

Este lenguaje es muy fuerte para las tareas de análisis exploratorio de datos,  y al nivel general, es mucho mejor para trabajar con datos.    Se puede utilizar cómodamente para estudios académicos, o situaciones donde no hay tanto énfasis de tener un buen código para “producción” optimizado.

La sintaxis  orientada  a vectores facilita   la implementación práctica de  la matemática, especialmente para personas que su fuerte no es la programación.  Es decir, se hace muy fácil  pasar vectores, matrices y funciones del papel al código.

Fuente: http://ucanalytics.com/blogs/r-vs-python-comparison-and-awsome-books-free-pdfs-to-learn-them/



 Si hablamos de Python,  es un lenguaje de propósito “más” general.  Es muy útil a la hora de combinar operaciones matemáticas con otros tipos de operaciones más de programación.   En el contexto del análisis de datos, permite añadir más capacidades  a un programa que trabaje con datos.


Python como lenguaje tiene mayor capacidad de integración con cualquier otra tecnología o aplicaciones externas.

En Python puedes tiene mayor libertad para  definir formatos de salida, estructuras de datos diferentes, etc.   Este es solo un ejemplo que tiene como ventaja.   Sintácticamente, Python es  más legible que R.

Otras ventajas que tiene Python, son sus librerías  para máquinas de aprendizaje, variadas y con bastantes funcionalidades.  Es perfecto para realizar “Scraping website”, extracción de datos  de páginas web, dicho esto,  es perfectamente funcional para  realizar aplicaciones web y de desktop.


Cabe destacar  que en velocidad de procesamiento ninguno de estos lenguajes son particularmente rápidos, de hechos se puede decir que son un poco lentos.


Tras leer muchos comentarios de programadores en diferentes sitios especializados,  a la hora de valorar un lenguaje es la productividad que puedas alcanzar con él.   Para el procesamiento  de datos  lo más importante es  el poder  de implementar  conceptos estadísticos complejos  a código de forma sencilla.

En este sentido tanto  R como Python van  muy a la par.  A la hora de escoger, muchos  programadores y/o científicos de datos eligen R para realizar análisis de  datos y Python para todo lo demás. 

Hay que recordar, R tiene  prácticamente paquetes para cualquier  técnica  o formula estadística  que pueda existir,  por ello  a la hora de elegir un lenguaje depende de que tan “exótica” sea  la tarea a resolver.  Para cosas más generales, es preferible usar Python.

Ahora, si  nos enfocamos como es el manejo para datos estructurados  R es mucho eficaz que Python, ya que este último lenguaje tiene una curva de aprendizaje más pronunciado.

En cambio, si  nos enfocamos en el manejo de data no estructurada, ejemplo: texto,   Python es muy superior que R.   Permite generar todo tipo de  analizadores léxicos (Parser)  para la manipular  cualquier clase de cadena de caracteres.

Resumiendo: Python es  un lenguaje de programación cercano a producción que puede ser usado para crear productos comerciales.        R, por otro lado, es perfecto para el análisis estadístico y procesamiento de imágenes a nivel de investigación científica. 

Comparaciones


Fuente:http://www.kdnuggets.com/2015/05/r-vs-python-data-science.html



Python

Ventajas:
  • Perfecto para Web scraping y crawling.
  • Permite conexiones a base de datos.
  • Ideal para programar y automatizar “pipelines” para la minería de datos.
  • Se puede integrar  con cualquier  proceso de desarrollo de software
  • Puede ser usado para Back-end, Cloud, Arquitectura, etc.
  • Librerías al por mayor para máquinas de aprendizajes.
  • Incluye  ”Ipyhton”, una herramienta con enormes capacidades  para el análisis exploratorio de datos. 
Desventajas:

  • No es bueno, en comparación con R, para el análisis estadístico.
  • Tiene una curva de aprendizaje bastante alto
R

Ventajas

  • Un número  enorme de  funciones/librerías/paquetes para análisis estadísticos.
  • Excelente para el procesamiento de imágenes.
  • Se puede crear modelos estadísticos complejos de forma “sencilla”
  • El IDE  RStudio facilita todo tipo de tareas, inclusive, las más tediosas.

Desventajas

  • La sintaxis del lenguaje no es muy legible.
  • Difícil de integrar con otros software
  • La documentación de ciertas librerías no son muy “amigables”

Conclusión




La mejor opción es usar tanto R como Python.   Aprender ambos. Saber cómo ambos lenguajes puede operar juntos.   Empezar con uno y después saltar al otro.  En esencia, saber cuándo utilizar alguno de los lenguajes, para qué tareas son más precisas.

En el mundo real, rara vez  están herramientas no se intercalan en  algún momento.

R  es perfecto para investigaciones científicas, cuando se necesite procesar conjuntos de datos específicos usando método estadísticos exóticos. Al mismo tiempo, Python  es perfecto para desarrollar software  de análisis  enfocado al usuario final.

28 comentarios:

Bottom Ad [Post Page]

| Designed by Colorlib