Como científico de datos, ¿usa más R o Python o es más o menos lo mismo?

A medida que Big Data continúa creciendo en importancia en las compañías de Software como Servicio (SaaS), el campo de análisis de Big Data es una apuesta segura para cualquier profesional que busque una carrera satisfactoria y bien remunerada.

Si está considerando comenzar o avanzar en su carrera en el campo de Big Data y ciencia de datos, hemos descrito tres lenguajes de programación populares que tal vez quiera aprender para darle un impulso a esa carrera: R, Python y Hadoop.

¿Por qué aprender R?

Un buen científico de datos es un experto en estadística de codificador-barra y no hay mejor lenguaje de programación para que aprenda un estadístico que R. El estándar entre los lenguajes de programación estadística, R a veces se llama el “niño de oro” de la ciencia de datos. Es una habilidad popular entre los analistas de Big Data, y algunas de las marcas más importantes, como Google, Facebook, el Banco de América y el New York Times, buscan a los científicos de datos expertos en R.

Además, las aplicaciones comerciales de R aumentan por minuto y las empresas aprecian su versatilidad. Si está intrigado y quiere saber por qué debería aprender R, aquí hay algunas razones más por las que debería agregar R a su conjunto de habilidades:

R es de código abierto y está disponible gratuitamente. A diferencia de SAS o Matlab, puede instalar, usar, actualizar, clonar, modificar, redistribuir y revender libremente R. Esto ahorra dinero a las empresas, pero también permite actualizaciones fáciles, lo que es útil para un lenguaje de programación estadística.

R es compatible con plataformas cruzadas. R se puede ejecutar en Windows, Mac OS X y Linux. También puede importar datos de Microsoft Excel, Microsoft Access, MySQL, SQLite, Oracle y otros programas.

R es un poderoso lenguaje de scripting. Como tal, R puede manejar conjuntos de datos grandes y complejos. R también es el mejor lenguaje para usar en simulaciones pesadas e intensivas en recursos y se puede usar en clústeres de computadoras de alto rendimiento.

R tiene una aclamación generalizada. Con un estimado de 2 millones de usuarios, R es uno de los principales lenguajes de programación de 2017.

R es altamente flexible y evolucionado. Muchos desarrollos nuevos en estadísticas aparecen primero como paquetes R.

R es altamente flexible y evolucionado. Muchos desarrollos nuevos en estadísticas aparecen primero como paquetes R.

A los editores les encanta R. R se integra fácilmente con los sistemas de preparación de documentos como LaTeX. Eso significa que la salida estadística y los gráficos de R pueden integrarse en documentos de procesamiento de texto.

R tiene una comunidad enorme y vibrante y un banco de recursos, con una comunidad global de usuarios apasionados que interactúan regularmente en foros de discusión y asisten a conferencias. Además, hay alrededor de 2000 bibliotecas gratuitas disponibles para su uso ilimitado, que cubren áreas estadísticas de finanzas, análisis de conglomerados, informática de alto rendimiento y más.

¿Por qué aprender Python?

Python es otro lenguaje de programación recomendado para personas que desean ingresar a los campos de Big Data o ciencia de datos. Es más fácil de aprender que R, pero es un lenguaje de programación de alto nivel que es la opción preferida entre los desarrolladores web y de juegos.

Siga leyendo para conocer más razones por las que Python debería estar en su lista de aprendizaje para 2017.

Python es fácil de aprender. Al igual que Java, C y Perl, los conceptos básicos de Python son más fáciles de entender para los novatos. Un programador que codifica en Python escribe menos código debido a las características fáciles de usar del lenguaje, como la legibilidad del código, la sintaxis simple y la facilidad de implementación.

Python es más fácil de depurar. Los errores son la peor pesadilla de todos los programadores, por lo que el diseño único de Python se presta bien a los programadores que se inician en la ciencia de datos. Escribir menos código significa que es más fácil de depurar. Los programas compilados en Python son menos propensos a problemas que los escritos en otros idiomas.

Python es ampliamente utilizado. Al igual que R, el lenguaje de programación Python se usa en una variedad de paquetes de software e industrias. Python impulsa el motor de búsqueda de Google, YouTube, DropBox, Reddit, Quora, Disqus y FriendFeed. La NASA, IBM y Mozilla dependen en gran medida de Python. Como especialista experto en Python, puede conseguir un trabajo en una de estas grandes compañías.

Python es un lenguaje orientado a objetos. Una sólida comprensión de los fundamentos lo ayudará a migrar a cualquier otro lenguaje orientado a objetos porque solo necesitará aprender la sintaxis del nuevo lenguaje.

Python es de código abierto. Como lenguaje de programación de código abierto, Python es gratuito, lo que lo hace atractivo para nuevas empresas y compañías más pequeñas. Su simplicidad también lo hace atractivo para equipos más pequeños.

Python es un lenguaje de alto rendimiento. Python ha sido durante mucho tiempo el idioma elegido para crear aplicaciones críticas para el negocio pero rápidas.

Python funciona con Rasberry Pi. Si quieres hacer cosas increíbles con Raspberry Pi, entonces debes aprender Python. Desde aficionados hasta programadores expertos, cualquiera puede construir aplicaciones del mundo real con Python.

Definitivamente diría que depende del caso de uso .

Este es el tipo de pregunta que uno debe hacerse al elegir cualquier tipo de herramienta o lenguaje de programación:

  • ¿Con qué tipo de datos estoy tratando?
  • ¿Qué cantidad de datos?
  • ¿Cuál me gusta para extraer el conocimiento de los datos más rápido?
  • Etc.

¡Y la elección no solo se reduce entre R y Python! (Incluso a veces uso Excel).

Puede consultar mis respuestas en las siguientes preguntas:

  • ¿Por qué Python es tan popular en el aprendizaje automático?
  • ¿Por qué Python y Java son los mejores lenguajes para aprender para Machine Learning?

Espero que esto responda tu pregunta.

Un pequeño descargo de responsabilidad primero, mi lenguaje de programación favorito es Python. El lenguaje que más uso es R. Quiero señalar esto para señalar que no hay preferencias personales involucradas.

Todo mi equipo, incluido yo, es el que más usa R porque nuestro flujo de trabajo se basa en documentos de análisis R. (usando knitr), los productos de datos interactivos (usando Shiny) son una gran parte de nuestra producción actual.

Sin embargo, dependiendo de los datos y la tarea, usaremos Python y está creciendo a un ritmo considerable.

El equipo de ingeniería de datos, por otro lado, usa Java bastante. Los menciono porque el contexto de la pregunta es la ciencia de datos y es un esfuerzo de equipo entre los dos equipos.

Hay empresas que están llenas de Python. Otros que están llenos de R. En mi opinión, usar el lenguaje que mejor se adapte a la tarea es el camino a seguir.

Primero, desgloso el problema de análisis en tareas granulares y selecciono el lenguaje de programación más adecuado para cada tarea. Depende de la naturaleza de los datos de tres factores principales, los algoritmos estadísticos necesarios y la dinámica del equipo.

Aquí hay una buena referencia para comenzar: Cómo seleccionar un lenguaje de programación para el aprendizaje automático

Utilizo ambos, y encuentro que Python hace algunas cosas más rápido y mejor, dado Jupyter y la pila de Python de ciencia de datos. Pero hay algunas cosas en R que realmente me gustan, como plyr, ggplot2 y las muchas funciones estadísticas de alto nivel y pruebas de hipótesis.

Pitón. Seguí usando R a través de Python (rpy2) solo para poder usar ggplot2. Pero los pandas realmente hacen que los dataframes R se vean anticuados. Y siempre me estoy moviendo más para mostrar cosas en la web (JavaScript, D3), por lo que hoy en día es matplotlib + seaborn (bibliotecas de Python) o D3.

More Interesting

¿Qué algoritmos se utilizan para hacer herramientas bioinformáticas?

¿Cuáles son las diferencias y similitudes entre varios términos como archivo de objeto, ejecutable, enlace dinámico, carga dinámica, tiempo de ejecución, tiempo de carga y tiempo de compilación?

¿Es posible obtener malware de una computadora infectada en el mismo wifi?

¿Cuál es la diferencia entre un profesional de TI y un informático? La gente siempre confunde uno con el otro. Necesito una respuesta precisa que pueda decirles en términos simples.

¿Qué aprendizaje automático y otras técnicas de inteligencia artificial se utilizan en economía?

¿Qué problemas o soluciones demuestran realmente la utilidad práctica de los cierres?

¿Por qué los megabytes no son exactamente 1 millón de bytes?

¿Cómo hacer un servidor privado de UnchartedWatersOnline, y es fácil de hacer con qué computadora tiene: 4GB RAM Core 2 duo 3.00GHz procesador HDD 500 gb 2,5GB VideocardATI Radeon 5450 HD conexión a internet 1 / Mbyte? ¿Es fácil de hacer?

¿Dónde se ubican los teléfonos móviles de hoy en comparación con las videocámaras en calidad de video?

¿Cuáles son algunos de los problemas abiertos, no especialmente famosos, de larga data en matemáticas que cualquiera puede entender?

Estoy considerando cambiar el backend de una aplicación a formatos web semánticos. ¿Qué tipo de impacto en el rendimiento puedo esperar en comparación con el uso de un sistema RDB?

¿Cómo es GATE FORUM Bhubaneswar para CS?

Cómo saber si un puerto USB es 3.0 o no

¿Cuál es la contribución del tercero de entre tres autores en el artículo científico de la informática?

¿Por qué CS51 no está disponible en edX como CS50? ¿Estará disponible?