# data[].attributes.body
Los dos lenguajes de programación más utilizados en data science son R y Python. En nuestro Máster en Data Science podrás volverte un profesional en este ámbito y saber comprender ambos lenguajes. Si quieres saber qué les diferencia, y cual es su papel en el mundo de la programación, este es el lugar adecuado.

Data Science

Data Science, también conocida como la Ciencia de Datos, es un campo interdisciplinario que incluye sistemas, procesos y métodos científicos para poder extraer y estudiar el conocimiento de datos en sus diversas formas. Se puede entender como una continuación de campos que analizan datos como serían la minería de datos, la analítica predictiva, la estadística y el aprendizaje automático.

La Ciencia de Datos utiliza técnicas extraídas de distintos campos que se ubican dentro de las matemáticas, la informática, la estadística y la ciencia de la información. A su vez, maneja procesos y sistemas como algoritmos, ecuaciones, interpretación de resultados y evaluaciones de datos. Dos de los principales lenguajes de programación que utiliza Data Science son R y Python.

¿Qué es R?

R es un lenguaje de programación y entorno que está enfocado al análisis de estadísticas. También es conocido en sus inicios como una reimplementación de un software libre, es hoy en día uno de los lenguajes de programación más utilizados. Aunque durante los último años, debido a la aparición de Python, ha ido perdiendo terreno.

Sus usos son variados dado que puede tomar parte en numerosos campos. Las investigaciones dentro de la comunidad estadística, en la investigación biomédica, en las matemáticas financieras, en la bioinformática y en la minería de datos son algunos de ellos. Además, es capaz de ejercer funcionalidades de graficación y cálculo.

Debido a sus múltiples capacidades y funciones, podemos encontrar R en el sistema GNU. El cual podemos encontrar en sistemas operativos como Linux, Windows, Macintosh y Unix. También es usado por compañías como Twitter y Facebook que hacen uso de este lenguaje de programación. El objetivo de su uso es obtener la información relacionada con la experiencia del usuario en sus redes.

¿Qué es Python?

Python es también un lenguaje de programación. A diferencia de R, es interpretado y busca mejorar el código legible a través de la sintaxis. Al soportar orientación a objetos, la programación funcional y la programación imperativa, se trata de un lenguaje multiparadigma que usa tipado multiplataforma y dinámico.

Dicho lenguaje de programación es utilizado en Data Science para analizar textos mediante el procesamiento de lenguajes naturales. A su vez, se usa para extraer información valiosa de diferentes bases de datos y programar algoritmos de aprendizaje en Machine Learning.

Python se administra a través de Python Software Foundation. Su licencia es compatible con la licencia general que podemos encontrar en GNU. Lo bueno de Python es que posee una biblioteca que puede ser usada para diversas tareas. También permite el uso de lenguajes como C y C++ para ofrecer la posibilidad de interacción con otras bibliotecas existentes.

Algunas de las bibliotecas de Python para Data Science son TensorFlow, Keras, Skitlearn o Pandas. Las 4 anteriormente mencionadas son las más utilizadas dentro de este sector. Estas permiten a los usuarios llevar a cabo tareas de forma mucho más eficiente. Por ejemplo, con Pandas podemos manejar datos o limpiar CSV con miles de filas y columnas. TensorFlow, en cambio, nos permite desarrollar redes neuronales de forma más sencilla.

¿Por qué estudiar R y Python en Máster en Data Science?

Debido al auge de ambos lenguajes de programación, R y Python son dos herramientas fundamentales. Son muy importantes en el ámbito de la interesante profesión de Data Sciencist. Ambos proporcionan al alumno un perfil técnico, junto con formación en estadística, modelos predictivos y bases de datos. Todo junto, consiguen que la empleabilidad del programa sea alta.

# data[].attributes.attachment_link.title
R y Python en Data Science - Máster en Data Science

# data[].attributes.attachment_link.description
Los dos lenguajes de programación más utilizados en data science son R y Python. Si quieres saber qué les diferencia, ¡este es el lugar adecuado!.

# data[].attributes.body
Para mí R es un programa estadístico con el cual se puede programar (no sólo en ámbito estadístico)
Python, es un lenguaje de programación que también es posible resolver  temas estadísticos.
Tienen las mismas potencialidades.
lo que no me queda claro si Python utiliza recursos propios.

# data[].attributes.body
1.Código Abierto
Puedes usar fácilmente este lenguaje de programación con un mínimo o ningún cargo porque es un lenguaje de código abierto. Esto significa que cualquiera puede usar el código fuente y hacer cambios en el programa. Esto ayuda a aumentar la calidad de la característica de resolución de problemas de este lenguaje.

2.Amplia gama de paquetes
R tiene una gran variedad de paquetes que puede utilizar para sus soluciones. El número de paquetes R está creciendo constantemente. R tiene más de 10.000 paquetes sólo en el repositorio CRAN. Casi todas las industrias pueden usar estos paquetes.

3.Alta compatibilidad
Puedes emparejar este lenguaje con muchos lenguajes de programación diferentes como Python, Java, C, o C++. Esto hace que este lenguaje sea altamente compatible. También puedes integrar R con software de gestión de bases de datos como Hadoop.

4.Alta calidad gráfica y de trazado
R también ayuda en la gráfica y el trazado. Para aportar atractivo visual y atracción, puedes integrar el plotty y el ggplot2. Esto hace que este lenguaje sea diferente a otros lenguajes de programación.

5.Informes alucinantes
Se pueden crear fácilmente resultados fáciles y extensos mientras se informa. R soporta paquetes como Markdown y Shiny. R también incluye guiones, gráficos y datos que le ayudarán a hacer informes mediante la incrustación. Con R, puedes crear una aplicación interactiva, y tus usuarios pueden jugar con los datos y el resultado en la web.

6.Apoyo al aprendizaje automático
También puede realizar actividades de aprendizaje de la máquina con el lenguaje de programación R. Por ejemplo, este lenguaje puede realizar la regresión y clasificación de los datos a través de una red neuronal artificial.

7.Crecimiento constante
Este lenguaje está creciendo drásticamente en la actualidad. Una de las razones del crecimiento de este programa es que es de código abierto. Este lenguaje usa tecnología de punta y provee actualizaciones instantáneas cada vez que este lenguaje agrega nuevas características.

# data[].attributes.headline
R vs. Python para la ciencia de datos: Explicación y consejos de aprendizaje

# data[].attributes.subject
R vs. Python para la ciencia de datos: Explicación y consejos de aprendizaje

# data[].attributes.body
Python y R se consideran lenguajes de programación esenciales para la ciencia de datos. Lo ideal sería dominar ambos para tener una base de programación completa, pero si eres nuevo en la ciencia de datos, ¿cuál es el mejor lugar para empezar?

Sigue leyendo para saber más sobre cómo se utiliza cada lenguaje de programación en la ciencia de datos, junto con consejos para elegir cuál empezar a aprender primero. Aquí analizaremos R vs Python.

¿Cuál es la diferencia entre Python y R?

Mientras que el lenguaje R es más especializado, Python es un lenguaje de programación de propósito general diseñado para una variedad de casos de uso.

Si es tu primera incursión en la programación, puede que el código Python te resulte más fácil de aprender y más ampliamente aplicable. Sin embargo, si ya tienes algún conocimiento de los lenguajes de programación o tienes objetivos profesionales específicos centrados en el análisis de datos (data analysis), el lenguaje R puede estar más adaptado a tus necesidades.

También hay muchas similitudes entre los lenguajes Python y R, por lo que la experiencia en uno de ellos puede ser útil para el otro. Por ejemplo, tanto Python como R son populares lenguajes de programación de código abierto respaldados por prósperas comunidades. Ambos pueden practicarse también en el entorno agnóstico del lenguaje, Jupyter Notebooks, junto con otros lenguajes de programación como Julia, Scala, Java y muchos más.

Python: El lenguaje de programación para todos los propósitos

Según los datos de Stack Overflow, Python es el lenguaje de programación de más rápido crecimiento en todo el mundo. Es muy accesible para los principiantes y ofrece el tipo de versatilidad que los desarrolladores web necesitan para crear sitios web tan variados como Spotify, Instagram, Reddit, Dropbox y el Washington Post. ¿No sabes cómo usar un caret o qué es una regresión? Python será el punto de partida más amigable para ti.

Python es un lenguaje de programación orientado a objetos, como Javascript o C++, que proporciona estabilidad y modularidad a los proyectos, sin importar su tamaño. Ofrece un enfoque flexible para el desarrollo web y la ciencia de datos que se siente intuitivo incluso si nunca has aprendido un lenguaje de programación antes.

Aprender Python proporciona a los programadores las habilidades necesarias para trabajar en negocios, productos digitales, proyectos de código abierto y diversas aplicaciones web fuera de la ciencia de datos. El lenguaje es una pequeña parte del ecosistema de Python; las bibliotecas más populares son:

NumPy (análisis numérico)

SciKit-learn (análisis predictivo)

Keras (aprendizaje profundo (Deep learning) e inteligencia artificial (Artificial Intelligence))

SciPy (computación científica)

Seaborn (visualización de datos (Data visualization) estadísticos)

Folium (visualización de datos geoespaciales)

Pandas (análisis de bases de datos)

Matplotlib (API orientada a objetos para incrustar gráficos)

PyCharm (entorno de desarrollo integrado [IDE] para Python)

"La parte más difícil de cualquier cosa es empezarla y Python es el primer gran paso para la ciencia de datos. La gente se asombra de lo fácil que es Python".

"La parte más difícil de cualquier cosa es empezarla y Python es el primer gran paso para la ciencia de datos", dice Joseph Santarcangelo, PhD, científico de datos (Data Scientists) de IBM, e instructor de varios cursos y programas de ciencia de datos de edX, desde los fundamentos de Python hasta el aprendizaje profundo. "La gente se asombra de lo fácil que es Python. Cuando se mira la programación, parece un concepto bastante abstracto. Es bastante difícil. Si cometes un pequeño error todo está mal. Así que la gente suele asustarse bastante. Y luego la gente es como oh wow eso es todo?"

3 razones para aprender Python para la ciencia de datos

1. Python es amigable para los principiantes: Python utiliza una sintaxis lógica y accesible que facilita la identificación del propósito de las cadenas de código y se basa menos en el enfoque formal de los lenguajes anteriores. Este enfoque en la legibilidad del código reduce la curva de aprendizaje y suaviza algunos de los desafíos de aprender lenguajes de programación por primera vez.

2. Python es multipropósito: Python no se limita a trabajar dentro de la comunidad de la ciencia de los datos. Los desarrolladores utilizan Python para construir todo tipo de aplicaciones, por lo que es un lenguaje útil si planeas centrarte en una variedad de tareas dentro del campo de la informática. Python también funciona bien con aplicaciones basadas en la web y admite muchos tipos de estructuras de datos, incluidas las de SQL. Además, es fácil encontrar diferentes conjuntos de datos para cualquier proyecto en el que estés trabajando o crear los tuyos propios utilizando productos dentro del ecosistema de Python.

3. Python es escalable: Python funciona más rápido que R, lo que le permite crecer y escalar junto con los proyectos. Para aquellos que trabajan en producción, construyendo pipelines o ejecutando producción a gran escala, ofrece los flujos de trabajo eficientes necesarios para ponerlos en marcha. Esta velocidad es la base de la preparación de Python para la producción. Permite construir pipelines de aprendizaje automático(machine learning) a gran escala para obtener información que siga el ritmo del negocio. Además, la modularidad del lenguaje garantiza que se pueda construir algo flexible.

kerasR: El dominante de la ciencia de datos

La programación en R es un lenguaje específico utilizado para el análisis de datos y la estadística. Utiliza una sintaxis específica empleada por los estadísticos y es una parte vital del mundo de la investigación y la ciencia de datos académica.

R sigue un modelo procedimental para el desarrollo. En lugar de agrupar los datos y el código en grupos como la programación orientada a objetos, desglosa las tareas de programación en una serie de pasos y subrutinas. Estos procedimientos hacen que sea más sencillo visualizar cómo se producirán las operaciones complejas.

Al igual que Python, R cuenta con una sólida comunidad, pero con un enfoque especializado en el análisis. R no ofrece un desarrollo de software de propósito general como Python, pero maneja mejor estos proyectos especializados de ciencia de datos porque ese es el único enfoque. El ecosistema de R incluye:

RStudio (un IDE basado en R)

CRAN (Comprehensive R Archive Network)

Tidyverse, una popular colección de paquetes de R

dplyr (un conjunto de funciones que permiten manipular marcos de datos)

Paquetes R, códigos R reproducibles y funciones

Ggplot2, un oRStudio (un IDE basado en R)

En resumen, R ofrece una especialización para el análisis de big data, pero no podrás utilizarlo para el desarrollo web de propósito general.

"Como en cualquier comunidad vibrante de software de código abierto, R se mueve rápidamente. Esto puede ser desorientador porque significa que nunca puedes terminar de aprender R. Por otro lado, hace que R sea un tema fascinante: siempre hay más que aprender".

"Como en cualquier comunidad vibrante de software de código abierto, R se mueve rápidamente. Esto puede ser desorientador porque significa que nunca se puede terminar de aprender R. Por otro lado, hace que R sea un tema fascinante: siempre hay más que aprender. Incluso los usuarios experimentados de R siguen encontrando nuevas funcionalidades que ayudan a resolver problemas de forma más rápida y elegante", dijo Radha, un analista de datos en la India y estudiante de edX que utilizó el curso Data Science: R Basics de HarvardX, que forma parte del programa de Certificación Profesional de ciencia de datos de HarvardX, para repasar este lenguaje de programación en constante evolución.

"3 razones para aprender a programar en R para la ciencia de datos

R no es un lenguaje de propósito general, pero dependiendo de dónde o cómo planees trabajar, podría ofrecer muchas ventajas que no están disponibles con un lenguaje de propósito general.

1. R está construido para la estadística: El análisis estadístico robusto es posible con Python, pero no tendrás las bibliotecas y funciones específicas de la sintaxis como lo haces con R. El lenguaje hace que sea mucho más intuitivo construir y comunicar los resultados de estos tipos específicos de programas. Los estadísticos y los analistas de datos utilizan R para manejar grandes conjuntos de datos con mayor facilidad utilizando modelos de aprendizaje automático estándar y minería de datos.

2. R es académico: R es casi la elección por defecto para trabajar en el mundo académico. R es muy adecuado para un subcampo del aprendizaje automático conocido como aprendizaje estadístico. Cualquier persona con una formación formal en estadística debería reconocer la sintaxis y la construcción de R.

3. R es intuitivo para el análisis: Puede que R no funcione con una gran variedad de proyectos, pero es la mejor opción para el trabajo de análisis e inferencia. Si piensa trabajar en un campo especializado, querrá un lenguaje de programación especializado. R también ofrece un potente entorno ideal para los tipos de visualizaciones de datos que emplean los científicos de datos.

¿Qué lenguaje de programación debería aprender, Python o R?

Si tu objetivo es aprender a programar en general, Python es la mejor opción. Si tu objetivo es centrarte exclusivamente en la estadística y las aplicaciones de datos, R podría tener la ventaja. Para decidir si empezar a aprender Python o R primero, hazte algunas preguntas:

¿Cuáles son tus objetivos profesionales?? Decidir entre los negocios y el mundo académico, por ejemplo, puede ayudar a aclarar cuál te servirá mejor al principio. Pensar en cuánto te gustaría mantener tus opciones abiertas o qué proyectos son más importantes para ti también puede ayudar.

¿A qué prevé dedicar la mayor parte de su energía? Si planeas quedarte con el análisis estadístico dentro de la mayoría de los proyectos de investigación, R podría superar a Python. Sin embargo, si quieres construir sistemas listos para la producción, podrías necesitar más flexibilidad.

¿Cómo piensa comunicar sus resultados? El examen de las diferentes formas en que Python y R pueden ayudar a la visualización de datos también puede ayudar a reducir su primer paso.

Is Python or R Easier?

Python es mucho más sencillo, ya que utiliza una sintaxis más cercana al inglés escrito para ejecutar los comandos. Sin embargo, R facilita la visualización y la manipulación de los datos si tienes otros lenguajes en tu haber. Está basado en la estadística, por lo que su sintaxis es más sencilla para el análisis.

R puede requerir más trabajo inicial que Python. Sin embargo, una vez que se ha aprendido la sintaxis, R puede facilitar ciertos tipos de tareas. Cuanta más experiencia se tenga con los lenguajes de programación, más fácil será aprender otro.

"Mi consejo es que no te rindas: si no eres tan bueno con un lenguaje, prueba con otro", dice Ben Tasker, Facilitador del Programa Técnico de Ciencia de Datos y Análisis de Datos en SNHU e instructor de los programas MicroBachelors de edX en gestión de datos y análisis de negocios. "Yo era bastante horrible codificando en Python cuando empecé mi carrera de ciencia de datos. Así que me pasé a R por alguna razón, aunque mucha gente afirma que R es más difícil de aprender. Lo aprendí mucho más rápido y luego volví a cambiar a Python y me sentí más cómodo con él, y ahora sólo uso Python, no uso R en absoluto."

De un vistazo: Consejos para elegir entre Python y R

La gente que elige Python:
Trabaja en la ciencia de datos orientada al negocioCrea algoritmos de aprendizaje automáticoTrabaja en una variedad de industriasRequiere un lenguaje flexiblePlanea crear proyectos que escalen | Las personas que eligen R:
Trabaja en áreas de análisis o de ciencia de datos con estadísticaTrabaja en el mundo académicoNecesita la sintaxis específica del lenguaje de los procesos estadísticosRealizan análisis estadísticos o trabajos analíticos especializadosNecesita una salida dinámica para comunicar los resultados
Es mejor elegir Python si:
No tiene experiencia en programaciónEl objetivo principal es la producción o el despliegueQuieres construir nuevos modelos desde ceroEl código de los proyectos debe ser legible. | Es mejor elegir R si:
Tiene previsto trabajar en la investigación o en el mundo académicoEl trabajo tiene un fuerte componente estadístico y de análisisDeseas hacer uso de amplias bibliotecas para soluciones existentesDeseas hacer uso de amplias bibliotecas para soluciones existentesLas características específicas de la sintaxis son importantesLa comunicación de resultados complejos es clave

El resultado final: Python para principiantes, R para la investigación

En última instancia, aprender Python y R te ayudará a obtener una ventaja competitiva en la ciencia de datos, y en sus diferentes ramas incluyendo data mining (procesamiento de datos). Explora los cursos y programas en una variedad de temas de ciencia de datos y análisis para ayudarte a dar el siguiente paso.

# data[].attributes.body
Python dispone de Pandas, una biblioteca pensada para facilitar el análisis de datos, filtrando, ordenando registros en cuestión de segundos. También permite limpiar datos, completar valores no válidos como NaN (no un número) con un valor que tenga sentido para el análisis numérico como 0.

Por contra R se creó precisamente para realizar análisis estadísticos y numéricos de grandes conjuntos de datos. Su funcionalidad básica abarca los conceptos básicos de análisis, optimización, procesamiento estadístico, optimización, generación de números aleatorios, procesamiento de señales y aprendizaje automático.
Esto hace que ofrezca un gran número de posibilidades en este ámbito. Podemos crear distribuciones de probabilidad y aplicar una batería de pruebas estadísticas y de aprendizaje automático en nuestros proyectos con una sencillez que incluso hoy hace palidecer a lenguajes mucho más modernos. Aunque para trabajos más pesados quizá deberemos recurrir a librerías de terceros para aprovechar todavía más su potencial.

# data[].attributes.body
Consejos para elegir entre Python y R

La gente que elige Python:
Trabaja en la ciencia de datos orientada al negocioCrea algoritmos de aprendizaje automáticoTrabaja en una variedad de industriasRequiere un lenguaje flexiblePlanea crear proyectos que escalen | Las personas que eligen R:
Trabaja en áreas de análisis o de ciencia de datos con estadísticaTrabaja en el mundo académicoNecesita la sintaxis específica del lenguaje de los procesos estadísticosRealizan análisis estadísticos o trabajos analíticos especializadosNecesita una salida dinámica para comunicar los resultados
Es mejor elegir Python si:
No tiene experiencia en programaciónEl objetivo principal es la producción o el despliegueQuieres construir nuevos modelos desde ceroEl código de los proyectos debe ser legible. | Es mejor elegir R si:
Tiene previsto trabajar en la investigación o en el mundo académicoEl trabajo tiene un fuerte componente estadístico y de análisisDeseas hacer uso de amplias bibliotecas para soluciones existentesDeseas hacer uso de amplias bibliotecas para soluciones existentesLas características específicas de la sintaxis son importantesLa comunicación de resultados complejos es clave

# data[].attributes.body
1.Mejora de la productividad
Este lenguaje es muy productivo y permite resolver problemas complicados. No sólo eso, este lenguaje es muy simple. No tienes que pasar meses para entender el comportamiento y la sintaxis del lenguaje. Puedes realizar más tareas escribiendo menos códigos con el lenguaje Python.

2.Lenguaje interpretado
Python tiene la capacidad de ejecutar cada código línea por línea. Esto significa que Python es un lenguaje interpretado. Si este lenguaje encuentra algún error, se detiene de inmediato e informa de ello. Así que no tiene que buscar errores. Puedes depurar fácilmente ya que este lenguaje sólo muestra un único error. Incluso si hay varios errores, sólo recibirás un error.

3.Fácil de aprender, leer y escribir
Puedes entender y leer fácilmente la codificación en este lenguaje de programación porque tiene una alta calidad de lenguaje. La sintaxis es similar a la del inglés, lo que te permite aprenderlo aún más rápido. Mucha gente usa Python porque entiende fácilmente el lenguaje. Además, hay menos líneas con código similar al de Java y C++, lo que lo hace más fácil.

4.Código abierto y gratuito
Al igual que el lenguaje de programación R, Python también es un lenguaje de código abierto y aprobado por la OSI. Puedes usar y distribuir libremente este lenguaje. La mejor parte es que puedes descargar, modificar y distribuir las versiones de python como tus propias modificaciones.

5.Portabilidad
La pitón tiene un beneficio único. Puede usar los mismos códigos para múltiples plataformas. Esto significa que no tienes que escribir diferentes códigos para diferentes plataformas. Esto ahorra mucho tiempo y esfuerzo.

6.Grandes bibliotecas
Python tiene una gran cantidad de bibliotecas, lo que la hace perfecta para realizar diversas tareas. Eso lo hace menos dependiente de las bibliotecas externas.

# data[].attributes.headline
Por otro lado, Python es más adecuado para implementar algoritmos de productividad. Tienes acceso a un gran número de paquetes para desarrolladores que te permiten crear código general de manera más rápida y vincular flujos de trabajos o componentes (aunque para objetivos estadísticos esto puede complicarse). R se puede utilizar como lenguaje de programación, pero esa no es su fortaleza. 

# data[].attributes.subject
Por otro lado, Python es más adecuado para implementar algoritmos de productividad. Tienes acceso a un gran número de paquetes para desarrolladores que te permiten crear código general de manera más rápida y vincular flujos de trabajos o componentes (aunque para objetivos estadísticos esto puede complicarse). R se puede utilizar como lenguaje de programación, pero esa no es su fortaleza. 

# data[].attributes.body
Gráficos. ¿Con cuál de ellos podemos crear los gráficos más impactantes?

R y la visualización de datos son una combinación perfecta

En términos de visualización de datos, R está muy por delante de Python. R ofrece gráficos sorprendentes mucho más sofisticados que los de Python. Por ejemplo, paquetes como ggplot2 hacen que graficar sea más fácil y más personalizable en R que en Python. Otros paquetes de visualización fundamentales son ggplot2, ggvis, googleVis y rCharts.

Actualización. ¿Cómo estar a la última en Data Science?

R está más actualizado en las últimas técnicas estadísticas, debido a su fuerte vínculo con el entorno académico.

El desarrollo de nuevas técnicas estadísticas es más rápido en R. Si existe una técnica estadística, es probable que ya exista un paquete R para implementarla. Por eso, hay momentos en que R es la mejor herramienta para el trabajo… O la única herramienta. Esto ocurre con modelos complejos como los modelos mixtos o GAM, como indicó Carlos Gil.

El enorme ecosistema de paquetes suele ser una gran ventaja para estos lenguajes, como indican Pachá (usuario experto de R) y Antonio Canepa Oneto (bioestadístico, ecólogo y biólogo marino de Burgos).

# data[].attributes.body
Discutamos las principales diferencias entre R y Python.

# data[].attributes.body
R y Python son lenguajes muy populares hoy en día especialmente para científicos de datos, que los utilizan para prospección, tratamiento y minería de datos y, Power BI es una de las herramientas que más está creciendo en cuanto a utilización y aceptación en el sector de inteligencia de negocios y análisis de datos. La sesión cubre, a través de demos, los puntos en los que ambos enfoques se combinan para sacar mejor partido a los datos con los que contamos. Según sea el caso, vamos a preferir gestionar nuestras tareas desde el mundo de estadísticas y gráficos ofrecido por lenguajes R y Python, el mundo más encaminado al análisis de negocio gestionado con Power BI, o ambos mundos.

# data[].attributes.attachment_link.readable_text
No hay notas en la diapositiva.

R y Python son lenguajes muy populares hoy en día especialmente para científicos de datos, que los utilizan para prospección, tratamiento y minería de datos y, Power BI es una de las herramientas que está creciendo tanto en utilización como en aceptación en el sector de inteligencia de negocios y análisis de datos. La sesión cubre, a través de demos, los puntos en los que ambos enfoques se combinan para sacar mejor partido a los datos con los que contamos. Según sea el caso, vamos a preferir gestionar nuestras tareas desde el mundo de estadísticas y gráficos ofrecido por lenguajes R y Python, el mundo más encaminado al análisis de negocio gestionado con Power BI, o ambos mundos.

Python se creó a finales de los ochenta en 1991 por Guido Van Rossum en el Centro para las Matemáticas y la Informática (CWI, Centrum Wiskunde & Informatica) de los Países Bajos. El nombre surge de la afición de su creador por los humoristas británicos Monty Python. Python se inspiró en el lenguaje C, Modula-3 y ABC.
pip es un sistema de gestión de paquetes utilizado para instalar y administrar paquetes de software escritos en Python. Muchos paquetes pueden ser encontrados en el Python Package Index (PyPI). Python 2.7.9 y posteriores (en la serie Python2), Python 3.4 y posteriores incluyen pip (pip3 para Python3) por defecto.

R apareció por primera vez en 1993, creado por los profesores de estadística Ross Ihaka y Robert Gentleman de la Universidad de Auckland en Nueva Zelanda. El nombre surge de las iniciales de ambos creadores, ya que se inspiró en el lenguaje S de Bell Labs, que data del 1970
R es un entorno y lenguaje de programación con un enfoque al análisis estadístico.
R proporciona un amplio abanico de herramientas estadísticas (modelos lineales y no lineales, tests estadísticos, análisis de series temporales, algoritmos de clasificación y agrupamiento, etc.) y gráficas Una Herramienta Util

R nació como una reimplementación de software libre del lenguaje S, adicionado con soporte para alcance estático. Se trata de uno de los lenguajes de programación más utilizados en investigación científica, siendo además muy popular en los campos de aprendizaje automático (machine learning), minería de datos, investigación biomédica, bioinformática y matemáticas financieras. A esto contribuye la posibilidad de cargar diferentes bibliotecas o paquetes con funcionalidades de cálculo y graficación.

PowerApps does not natively understand R-code. However, PowerApps integrates well with SQL Server, which does understand R. Therefore, you could use Flow/Stored Procedures/TSQL to execute your R code and read the results back into PowerApps, possibly through views. 3. With PowerApps, 'custom connectors' provide the main point of integration, and I can't immediately think of a simple way for you to integrate with R-shiny. However, it might be helpful for you to clarify exactly what type of you're looking for, so that someone here might be able to provide with a more detailed response.

https://www.museodelprado.es/coleccion/artista/el-greco/b031da57-6a7e-43f2-a855-293275efc340

Columna calculada con DAX
Almacena los valores correspondientes a cada clúster

A más columnas, más opciones combinaciones

https://www.youtube.com/user/mspowerbi/playlists
https://powerbi.microsoft.com/es-es/guided-learning/

https://www.youtube.com/user/mspowerbi/playlists
https://powerbi.microsoft.com/es-es/guided-learning/

# data[].attributes.attachment_link.title
R y Python con Power BI, la ciencia y el análisis de datos, juntos

# data[].attributes.attachment_link.description
No hay notas en la diapositiva. R y Python son lenguajes muy populares hoy en día especialmente para científicos de datos, que los utilizan para prospección, tratamiento y minería de datos y, Power BI es una de las herramientas que está creciendo tanto en utilización como en aceptación en el sector de inteligencia de negocios y análisis de datos.

# data[].attributes.body
Cuál de los dos es mejor que el otro de cara a Data Science. Cada uno es bueno para una cosa en concreto. Por ejemplo, para Deep Learning Python es el rey, mientras que para visualización de datos, mejor R

# data[].attributes.attachment_link.readable_text
Seguramente hayas leído muchas comparativas entre Python y R, diciendo cuál de los dos es mejor que el otro de cara a Data Science. En mi opinión, cada uno es bueno para una cosa en concreto. Por ejemplo, para Deep Learning Python es el rey, mientras que para visualización de datos, yo prefiero R. Entonces, ¿no habría alguna forma de usar los dos indistintamente? Pues sí, se puede programar con Python y R en el mismo Jupyter Notebook. ¡Vamos a ellos!

Prerrequisitos de la instalación

1. Prerrequisitos Básicos

Para poder programar con R y Python en el mismo Jupyter Notebook necesitamos 3 cosas básicas, que daremos por hecho en este tutorial:

1. Tener Python Instalado en su versión 3.5 o superior. En mi caso uso Python 3.7.3. (Cómo conocer tu versión de Python)

2. Tener R Instalado en su versión 3.2 o superior. En mi caso uso la versión 3.6.1. (Cómo conocer tu versión de R).

3. Tener Jupyter instalado: en mi caso tengo la verión 6.0 (cómo conocer tu versión de Jupyter Notebook).

Si no tienes Python y Jupyter instalado, te recomiendo los instales desde Anaconda.

Esta es la parte fácil. Vayamos ahora con lo interesante;)

2. Instalar R dentro de Jupyter Notebook

Una vez hayas instalado Python, R y Jupyter Notebook tendrás que instalar R dentro de Jupyter Notebook. Esto te permitirá crear Jupyter Notebooks en R. Esto, en sí mismo, no es un gran avance, puesto que con R puedes crear R Markdown, que viene a ser algo similar a Jupyter. A menos que seas un gran fran de Jupyter, claro.

Para poder usar R con los Jupyter Notebooks debes instalar los paquetes dentro de R essentials. Para ello, debes ejecutar la siguiente línea de comando en Anaconda Prompt:

$ conda install -c r r-essentials

Con esto, ya deberías poder crear Jupyter Notebooks con R. Para comprobarlo, simplemente ejecuta Jupyter y crea un nuevo notebook. Si se despliega R como opción, entonces lo has hecho bien. Sino este enlace te será de ayuda.

Hecho esto llega lo interesante: cómo programar con Python y R en el mismo Jupyter Notebook.

Cómo programar con Python y R en el mismo Jupyter Notebook

Hay que entender que R y Python guardan las variables en estructuras diferentes. Por tanto, si queremos usar ambos, necesitamos un paquete que nos sirva de traductor, es decir, que "convierta" una lista de Python en un vector en R para poder trabajar con ello, por ejemplo.

Para ello utilizaremos el paquete rpy. Este paquete genera una interfaz en Python en la que trabajar con R. Otra opción sería usar el paquete reticulate, que básicamente es lo contrario: una interfaz en R para Python, por si prefieres programar en RStudio, te dejo este post donde lo explico;)

Instalar el paquete rpy

Lo primero que debes hacer es instalar el paquete rpy. Para ello, estaríamos tentados a instalarlo desde el repositorio, pero yo no lo recomiendo. A mi, lo que me ha funcionado ha sido:

1. Descargar el último archivo (.whl) desde aquí. (Usar Cntrl + F o Cmd + F para encontrarlo, puesto que está bastante abajo).

2. Instalar el archivo en Anaconda Promp . Para ello, sitúate en la carpeta donde esté descargado con el código "cd ruta". Una vez ahí, ejecuta " pip install [nombre del archivo .whl] ". Ejemplo:

cd "C:\Users\Ander\Documents\Example"<br>pip install rpy2-2.9.5-cp37-cp37m-win_amd64

3. Añadir la ruta de la carpeta bin de R a la variable de entorno PATH. Para ello, lo primero que debes hacer es encontrar cuál es la ruta de la carpeta bin de R. En mi caso, se encuentra en: "C:\Program Files\R\R-3.6.1\bin". Una vez la tengas, tienes que añadirla como variable de entorno de PATH. Aquí se explica cómo hacerlo, tanto en Windows como en Mac.

4. Crea las variables de entorno: R_HOME, R_USER y R_LIBS_USER. Cada una indicara, dónde se encuentra R, cúal es el usuario que lo ejecuta y dónde se encuentran los paquetes, respectivamente. En cada una de ellas añade lo siguiente:

R_HOME: la raíz de R. En mi caso: C:\Program Files\R\R-3.6.1\

R_USER: los usuarios que usarán R. Si quieres usar R más allá de Jupyter, debes añadir dos variables, la localización de R Studio (C:\Program Files\RStudio\bin) y la localización del paquete rpy2 (C:\Users\Ander\Anaconda3\Lib\site-packages\rpy2)

R_LIBS_USER: dónde se encuentran las librerías. En mi caso: C:\Users\Ander\Documents\R\win-library\3.6

Una vez hecho esto, simplemente lanzamos un Jupyter notebook en Python y cargamos el paquete con el siguiente comando:

%load_ext rpy2.ipython

Si todo está OK, ¡enhorabuena! Ya puedes usar R dentro de Python. ¿Cómo? Pues sencillo: cada vez que quieras usar una variable con R (por ejemplo, el dataframe df), deberás "llevarla" a R usando el siguiente código:

Así, ya podrás operar con R dentro de Python. Si esto te gusta y no quieres esperar a más tutoriales, aquí, puedes profundizar en el paquete rpy2. En cualquier caso, te dejo un notebook para que veáis un ejemplo.

%load_ext rpy2.ipython

import pandas as pd import numpy as np df = pd.DataFrame({ 'cups_of_coffee': [0, 1, 2, 3, 4, 5, 6, 7, 8, 9], 'productivity': [2, 5, 6, 8, 9, 8, 0, 1, 0, -1] }) df.transpose()

%%R -i df library(ggplot2) ggplot(df, aes(x=reorder(cups_of_coffee,productivity), y=productivity)) + geom_col() + coord_flip()

# data[].attributes.attachment_link.title
Cómo programar con Python y R en el mismo Jupyter Notebook - Ander Fernández

# data[].attributes.attachment_link.description
Seguramente hayas leído muchas comparativas entre Python y R, diciendo cuál de los dos es mejor que el otro de cara a Data Science. En mi opinión, cada uno es bueno para una cosa en concreto. Por ejemplo, para Deep Learning Python es el rey, mientras que para visualización de datos, yo prefiero R.

# data[].attributes.headline
R y Python son dos de los lenguajes favoritos de los Data Scientists.

# data[].attributes.subject
R y Python son dos de los lenguajes favoritos de los Data Scientists.

# data[].attributes.body
Uso. ¿En qué se especializan? ¿Qué problemas intentan resolver?

R es la lengua franca de las estadísticas (y los gráficos), mientras que Python es un lenguaje multi-propósito que  permite mejorar la productividad de los desarrolladores

En comparación con Python, es más fácil realizar análisis de datos complejos en R. La gran cantidad de paquetes estadísticos te permite realizar cualquier análisis de datos de manera sencilla y rápida, con pocas líneas de código.

Si bien Python cuenta con paquetes para el análisis estadístico, todavía le falta algo de la riqueza de R para el análisis de datos. Ahora mismo R está por delante en este punto, aunque poco a poco se está cerrando la brecha.

Dominic Royé (Ph.D. en Geografía Física investigador en la Universidad de Oporto y la Universidad De Santiago de Compostela) y Carlos Gil (estadístico y científico de datos con una trayectoria espectacular, miembro fundador de la Comunidad de usuarios de R, Madrid) opinan sobre R.

# data[].attributes.body
1. ¿Qué tipo de problema quiero resolver? Optaremos por uno u otro en función del tipo de análisis de datos que queramos llevar a cabo, ya sea Machine Learning, Data Mining, analítica web, etc. Así R es una muy buena opción cuando el análisis de datos requiere una computación independiente o un análisis individual en los servidores, mientras que Python lo usaremos cuando el análisis de datos requiera ser integrado con las aplicaciones webs o si necesitamos incorporar el código de análisis estadístico en una base de datos de producción.

# data[].attributes.headline
Diferencias y Similitudes entre R y Python

# data[].attributes.subject
Diferencias y Similitudes entre R y Python

# data[].attributes.body
Es difícil elegir entre estos dos lenguajes de análisis de datos pues ambos son increíblemente flexibles, gratuitos y de código abierto, y se desarrollaron a principios de la década de 1990: R enfocado para análisis estadístico y Python como lenguaje de programación de propósito general.

Ambos han ido evolucionando hasta convertirse en imprescindibles. Si estás interesado en proyectos relacionados con el aprendizaje automático, el trabajo con grandes conjuntos de datos o crear visualizaciones de datos complejas ambos se presentan como excelentes opciones.

R tiene una curva de aprendizaje pronunciada y las personas con poca o ninguna experiencia en programación lo encuentran difícil al principio. Una vez que domines el lenguaje, no será tan difícil de entender, pero lleva tiempo. Mientras que Python enfatiza la productividad y la legibilidad del código, lo que lo convierte en uno de los lenguajes de programación más simples. Es preferible por su facilidad de aprendizaje y comprensión.

Por otro lado, Python es un lenguaje de programación de alto nivel y ha sido la elección para crear aplicaciones críticas pero rápidas. De hecho, está presente en innumerables proyectos por esa razón. Por contra R es un lenguaje de programación de bajo nivel debido a que requiere códigos más largos para procedimientos simples. Esta es una de las razones de su velocidad reducida en comparación con Python.

Dicho esto, es el momento de analizar estos dos lenguajes un poco más en profundidad con respecto a su uso y manejo de datos, que incluyen:

Recopilación de datos

Exploración de datos

Modelado de datos

Visualización de datos

Recopilación de datos

Python admite todo tipo de formatos de datos diferentes. Podemos trabajar con documentos CSV, manejar archivos JSON procedentes de la web o importar tablas procedentes de consultas SQL.

Además, también podemos trabajar con diferentes conjuntos de datos gracias a la bibliotecas disponibles para capturar datos desde diferentes lugares de manera simultánea usando apenas una o varias líneas de código y analizar en profundidad la información obtenida una vez ordenados los datos.

R puede no ser tan versátil para obtener información de la web como lo es Python, puede manejar datos de sus fuentes más comunes como archivos de texto, CSV, hojas de cálculo Excel, etc. Para mitigar este problema, R dispone de paquetes creados para mitigar sus carencias como es el caso de Rvest que permite realizar una captura de datos web básico.

Exploración de datos

Python dispone de Pandas, una biblioteca pensada para facilitar el análisis de datos, filtrando, ordenando registros en cuestión de segundos. También permite limpiar datos, completar valores no válidos como NaN (no un número) con un valor que tenga sentido para el análisis numérico como 0.

Por contra R se creó precisamente para realizar análisis estadísticos y numéricos de grandes conjuntos de datos. Su funcionalidad básica abarca los conceptos básicos de análisis, optimización, procesamiento estadístico, optimización, generación de números aleatorios, procesamiento de señales y aprendizaje automático.

Esto hace que ofrezca un gran número de posibilidades en este ámbito. Podemos crear distribuciones de probabilidad y aplicar una batería de pruebas estadísticas y de aprendizaje automático en nuestros proyectos con una sencillez que incluso hoy hace palidecer a lenguajes mucho más modernos. Aunque para trabajos más pesados quizá deberemos recurrir a librerías de terceros para aprovechar todavía más su potencial.

Modelado de datos

Python permite hacer análisis de modelado numérico con Numpy, permite realizar cálculos avanzados con SciPy y nos ofrece el acceso a una gran cantidad de potentes algoritmos de aprendizaje automático gracias a la librería scikit-learn. En conjunto podemos aprovechar todo el poder que Python nos ofrece en modelado de datos sin complicaciones.

Por su lado, R es capaz también de realizar el modelado y análisis de datos específicos más allá de su funcionalidad principal. Para ello se suele hacer uso de alguno de los paquetes disponibles para análisis específicos, como es el caso de Poisson.

Visualización de datos

En Python contamos con varias opciones para trabajar con la visualización de datos. Lo más usual es trabajar con la librería Matplotlib que permite generar gráficos y tablas básicas a partir de datos incrustados. Aunque si necesitamos trabajar con gráficos más avanzados mi recomendación pasa por probar Plot.ly. Utilizando su API podemos generar en Python todo tipo de gráficos y paneles.

Y ya, por último, usando la función nbconvert podemos convertir nuestros trabajos en Python en documentos HTML e insertar fragmentos de código con un formato más amigable en sitios web interactivos.

Dicho esto, vamos con R. Como comentaba este lenguaje se creó principalmente para trabajar en análisis estadísticos y demostrar resultados. Debido a esto su ámbito fue principalmente académico y proporciona un potente entorno adecuado para la visualización científica con muchos paquetes especializados en la visualización gráfica de resultados de modo nativa para posteriormente guardar o exportar archivos en formato de imagen o PDF.

Al igual que en Python contamos con librerías específicas para para representación gráfica avanzada como ggplot2, muy utilizado para realizar gráficos de dispersión complejos con líneas de regresión.

Python vs R… ¿Cuál elegir?

Por lo general se considera que R es el mejor lenguaje de programación para cualquier profesional de la ciencia de datos, ya que posee un extenso catálogo de métodos estadísticos y gráficos.

Python, por otro lado, puede hacer prácticamente el mismo trabajo que R, los científicos de datos o los analistas de datos lo prefieren debido a su simplicidad y alto rendimiento. Mientras que R es un lenguaje de scripting poderoso y altamente flexible con una comunidad vibrante y un banco de recursos, Python es además un lenguaje orientado a objetos ampliamente utilizado que es fácil de aprender y depurar.

Como no hay una respuesta simple que responda a todos los posibles escenarios. Quizá la mejor manera de poder decidir es respondiendo a alguna de las siguientes preguntas antes tomar una decisión final:

¿Tienes experiencia programando en otros lenguajes?

Si tienes algo de experiencia en programación, Python podría ser el lenguaje más indicado. Su sintaxis es más similar a la de otros lenguajes en comparación con R y su sintaxis. Python se puede leer con facilidad y facilita que podamos desarrollar código más rápidamente.

¿Eres científico o ingeniero?

La verdadera diferencia entre Python y R radica en estar listo para producción. Python es un lenguaje de programación completo y muchas organizaciones lo utilizan en sus sistemas de producción y se integra mucho mejor que R. Sin embargo, para escribir código realmente eficiente, es posible que deba emplear un lenguaje de nivel inferior como C ++ o Java.

Por otro lado, R es un software de programación estadístico muy usado en el mundo académico.

¿Quieres aprender “aprendizaje automático” o “aprendizaje estadístico”?

Continuando con la pregunta anterior. Aquí debemos tener en consideración que el aprendizaje automático es un subcampo de la inteligencia artificial, mientras que el aprendizaje estadístico es un subcampo de la estadística.

Así el aprendizaje automático tiene un mayor énfasis en las aplicaciones a gran escala y la precisión de las predicciones; mientras que el aprendizaje estadístico enfatiza los modelos y su interpretabilidad, precisión e incertidumbre.

¿Necesitas visualizar tus datos en hermosos gráficos?

En lo particular considero que aquí se encuentra la actual batalla a librar. Para la creación rápida de prototipos y el trabajo con conjuntos de datos R va algo por delante por delante. Sin embargo, Python ha alcanzado algunos avances gracias a Matplotlib, pero R todavía parece ser mucho mejor en la visualización de datos.

# data[].attributes.body
Se puede usar en desarrollo web, desarrollo de software, scripting de sistemas, etc. Funciona en diferentes plataformas. Python fue diseñado para una mejor legibilidad; por lo tanto, tiene cierta similitud con el idioma inglés. Python se enfoca en sintaxis y gramática simples y menos desordenadas.

En python, los espacios en blanco marcan las hendiduras para limitar el bloque. Utiliza la tipificación dinámica y el enlace tardío que vincula los métodos y las variables en el tiempo de ejecución. Con una gran cantidad de bibliotecas, Python se puede usar para muchos propósitos.

# data[].attributes.body
R: -

R es un lenguaje estadístico. Se utiliza para desarrollar software estadístico y análisis de datos. Desde que la minería de datos y el estudio de datos se han vuelto populares, R también ha ganado popularidad. Junto con las técnicas estadísticas, R también proporciona una amplia variedad de bibliotecas para técnicas gráficas. Puede producir gráficos estáticos que se utilizan para gráficos de calidad de publicación. Los gráficos dinámicos e interactivos también están disponibles. R tiene una red de archivo de paquetes (CRAN- Red global de archivos R) para todos los paquetes que admite. Contiene más de 10, 000 paquetes. R es un lenguaje de línea de comandos, pero hay varias interfaces que proporcionan una GUI interactiva para facilitar la tarea de los desarrolladores.

# data[].attributes.body
Python admite todo tipo de formatos de datos diferentes. Podemos trabajar con documentos CSV, manejar archivos JSON procedentes de la web o importar tablas procedentes de consultas SQL.
Además, también podemos trabajar con diferentes conjuntos de datos gracias a la bibliotecas disponibles para capturar datos desde diferentes lugares de manera simultánea usando apenas una o varias líneas de código y analizar en profundidad la información obtenida una vez ordenados los datos.

R puede no ser tan versátil para obtener información de la web como lo es Python, puede manejar datos de sus fuentes más comunes como archivos de texto, CSV, hojas de cálculo Excel, etc. Para mitigar este problema, R dispone de paquetes creados para mitigar sus carencias como es el caso de Rvest que permite realizar una captura de datos web básico.

# data[].attributes.headline
R vs Python: ¿cuál es mejor para el análisis de datos?

# data[].attributes.subject
R vs Python: ¿cuál es mejor para el análisis de datos?

# data[].attributes.attachment_link.readable_text
UNIR Revista

¿R o Python? En UNIR analizamos las principales diferencias entre estos dos lenguajes tan utilizados por los especialistas en Data Science.

Mientras el lenguaje R dispone de un enfoque matemático, Python es un lenguaje de alto nivel multipropósito, cuya principal ventaja es la facilidad en la legibilidad del código.

Por este motivo, R es más fácil de utilizar por profesionales con conocimientos matemáticos, mientras que Python suele ser el lenguaje elegido por otros perfiles no tan familiarizados con el ámbito de las matemáticas, como los informáticos. Entonces, ¿ R o Python? En UNIR analizamos las principales diferencias entre estos dos lenguajes tan utilizados por los especialistas en Data Science.

Una de las principales variables que decanta la balanza en uno u otro sentido son las necesidades de procesado de los datos con los que se va a trabajar.

Otra de las principales variables que decanta la balanza en uno u otro sentido son las necesidades de procesado de los datos con los que se va a trabajar.

Si lo que se necesita, por ejemplo, es realizar un análisis estadístico complejo, la elección de R como lenguaje será más recomendada debido a la gran cantidad de librerías para este propósito de las que dispone y a la sencillez de implementación de los algoritmos necesarios en pocas líneas de código, mientras que si lo que precisamos es la implementación de un código de tipo más general o no tan matemático, la elección recomendada sería Python debido a la sencillez del desarrollo con este lenguaje.

Diferencias entre R y Python

Las principales diferencias son:

-R es un lenguaje orientado al análisis estadístico que se utiliza ampliamente en el campo de la ciencia de datos, mientras que

-Python es un lenguaje de alto nivel multipropósito utilizado además en otros campos (desarrollo web, scripting, etc.).

-R es un lenguaje más lento que Python en ejecución.

-R es más potente en visualización de información y datos que Python.

¿Qué lenguaje utilizar para ciencia de datos?

R y Python son excelentes lenguajes de programación, por lo que ambos se pueden utilizar en este campo de manera óptima. Para poder dar respuesta a esta pregunta antes debemos analizar las siguientes cuestiones:

-¿Qué necesitamos? Por ejemplo, R es una opción recomendada si necesitamos hacer un análisis estadístico exhaustivo o un análisis independiente a realizar en una máquina. Por su parte, Python es una buena elección cuando los datos a tratar provienen de diferentes plataformas que hay que integrar con nuestro desarrollo (webs, bases de datos, etc.).

R es una opción recomendada si necesitamos hacer un análisis estadístico exhaustivo o un análisis independiente a realizar en una máquina.

-¿Qué profesionales van a utilizar el lenguaje? Si estos tienen amplios conocimientos matemáticos, sobre todo estadísticos, el lenguaje que aprenderán a utilizar con más facilidad es R. Mientras que, si son informáticos o personas con conocimientos de programación en otros lenguajes multipropósito, el lenguaje más sencillo de aprender y utilizar para ellos será Python. De manera general, es más fácil aprender Python que R al tratarse de un lenguaje más sencillo.

-¿Qué plataformas de Business Intelligence y/o Big Data utilizamos? Debemos elegir el lenguaje de programación que mejor integración tenga con las plataformas con las que vaya a interactuar nuestro desarrollo.

En cualquier caso, tanto R como Python son lenguajes de código abierto que disponen de amplias comunidades de desarrolladores que los mantienen en constante evolución, en paralelo al progreso que experimentan profesiones ligadas al ámbito del Big Data y el Data Science. Es por eso que en UNIR apostamos por este sector con titulaciones como el Máster en Visual Analytics y Big data o el Programa en Big Data for Business.

Máster Universitario en Big Data & Visual Analytics

Programa Avanzado en Big Data for Business

¿Sabes en qué consiste el certificado ISO 45001? En UNIR abordamos las claves de esta certificación, su importancia y cómo se obtiene.

¿Sabes en qué consiste la norma ISO 9001? Descubre todos sus detalles: en qué consiste, su importancia en la empresa y qué se necesita para su certificación.

¿Sabes cuáles son las certificaciones de seguridad informática más destacadas? En UNIR abordamos las más destacadas en la actualidad.

# data[].attributes.attachment_link.title
R vs Python, ¿cuál escoger para el análisis de datos?

# data[].attributes.attachment_link.description
UNIR Revista Mientras el lenguaje R dispone de un enfoque matemático, Python es un lenguaje de alto nivel multipropósito, cuya principal ventaja es la facilidad en la legibilidad del código. Por este motivo, R es más fácil de utilizar por profesionales con conocimientos matemáticos, mientras que Python suele ser el lenguaje elegido por otros perfiles no tan familiarizados con el ámbito de las matemáticas, como los informáticos.

# data[].attributes.body
"Si lo que se necesita, por ejemplo, es realizar un análisis estadístico complejo, la elección de R como lenguaje será más recomendada debido a la gran cantidad de librerías para este propósito de las que dispone y a la sencillez de implementación de los algoritmos necesarios en pocas líneas de código, mientras que si lo que precisamos es la implementación de un código de tipo más general o no tan matemático, la elección recomendada sería Python debido a la sencillez del desarrollo con este lenguaje."

# data[].attributes.attachment_link.title
3 diferencias entre 💻 R vs Python 🐍 para DATA SCIENCE

# data[].attributes.body
https://openwebinars.net/blog/r-vs-python-en-que-se-diferencian-y-en-que-se-parecen/

# data[].attributes.attachment_link.readable_text
Estoy seguro que este no es el primer artículo que visitas sobre el tema, hay cientos, miles de artículos que de un modo u otro comparan0 los dos idiomas de programación más extendidos en el mundo de la ciencia de datos y por tanto del análisis de datos en general. Para un número creciente de personas, la ciencia de datos es una parte central de su trabajo. Durante la última década el aumento de la disponibilidad de datos, la irrupción de las tecnologías en la nube, ofreciendo unas capacidades de cómputo más potente y el énfasis en la importancia de la toma de decisiones basadas en análisis en los negocios la han convertido en una era de apogeo para la ciencia de datos. Según un informe de IBM, en 2020 se publicaron cerca de 2,72 millones de vacantes para trabajos de análisis de datos en EE.UU, demasiado gran número para ser ignorado.

En la industria los dos lenguajes de programación más populares en la actualidad para el trabajo de ciencia de datos son Python y R. Ambos lenguajes son excelentes opciones y este artículo no pretende ser una guerra para ver cuál es mejor o peor, sino que desde una perspectiva objetiva y basada en nuestra experiencia intentaremos desgranar sus pros y contras para averiguar qué idioma es el más adecuado para según qué escenarios, lo "fácil", lo "difícil" y viceversa por lo que mostraremos algunos ejemplos en el proceso.

No es necesario que sepas de programación para entender los ejemplos, la idea es que este artículo sirva de introducción para un público general, pero si estás buscando aprender algunas habilidades de programación para trabajar con datos, tomar un curso de Python o un curso de R serían excelentes opciones.

Una breve descripción de la historia de Python y R

Python

Python fue presentado en 1989 con una revolucionaria filosofía que proponía la legibilidad y la eficiencia del código como nuevo paradigma frente a otros lenguajes de programación orientado a objetos. Su sencillez y modularidad proporcionaba a los científicos de datos la posibilidad de trabajar directamente con un código amigable y con una curva de aprendizaje razonable que les permitía ejecutar tareas con mejor estabilidad, modularidad y legibilidad del código.

Su popularidad ha ido creciendo y en la actualidad la ciencia de datos es solo una pequeña parte dentro del diverso ecosistema de Python. Existen bibliotecas de aprendizaje automático que incluyen herramientas populares como Keras o TensorFlow, que permiten a los científicos de datos desarrollar modelos de datos sofisticados que se conectan directamente a sistemas de producción. Si quieres conocer más detalles en especial sobre Python, pasado, presente y su evolución, te recomiendo leer el siguiente artículo: Qué es Python.

R

R es un lenguaje de programación cuya primera versión apareció en 1992. Durante años fue un lenguaje muy extendido en Universidades y preferido por la mayoría de científicos de datos dado que presentaba notables ventajas a la hora de construir modelos de datos frente a las alternativas presentes en la época.

Esto ha ido permitiendo la creación de una enorme comunidad que ha desarrollado paquetes de código abierto para permitir trabajar con modelos complejos específicos evitando tener que "reinventar la rueda" partiendo de un desarrollo desde cero.

Otra particularidad que lo hizo particularmente destacable fue su capacidad de generar informes de calidad con soporte para la visualización de datos y sus frameworks disponibles para crear aplicaciones web interactivas. Para más información te recomiendo leer el artículo Qué es R y por qué utilizarlo publicado aquí en OpenWebinars.

Diferencias y similitudes entre Python y R

Es difícil elegir entre estos dos lenguajes de análisis de datos pues ambos son increíblemente flexibles, gratuitos y de código abierto, y se desarrollaron a principios de la década de 1990: R enfocado para análisis estadístico y Python como lenguaje de programación de propósito general.

Ambos han ido evolucionando hasta convertirse en imprescindibles. Si estás interesado en proyectos relacionados con el aprendizaje automático, el trabajo con grandes conjuntos de datos o crear visualizaciones de datos complejas ambos se presentan como excelentes opciones.

R tiene una curva de aprendizaje pronunciada y las personas con poca o ninguna experiencia en programación lo encuentran difícil al principio. Una vez que domines el lenguaje, no será tan difícil de entender, pero lleva tiempo. Mientras que Python enfatiza la productividad y la legibilidad del código, lo que lo convierte en uno de los lenguajes de programación más simples. Es preferible por su facilidad de aprendizaje y comprensión.

Por otro lado, Python es un lenguaje de programación de alto nivel y ha sido la elección para crear aplicaciones críticas pero rápidas. De hecho, está presente en innumerables proyectos por esa razón. Por contra R es un lenguaje de programación de bajo nivel debido a que requiere códigos más largos para procedimientos simples. Esta es una de las razones de su velocidad reducida en comparación con Python.

Dicho esto, es el momento de analizar estos dos lenguajes un poco más en profundidad con respecto a su uso y manejo de datos, que incluyen:

Recopilación de datos

Python admite todo tipo de formatos de datos diferentes. Podemos trabajar con documentos CSV, manejar archivos JSON procedentes de la web o importar tablas procedentes de consultas SQL.

Además, también podemos trabajar con diferentes conjuntos de datos gracias a la bibliotecas disponibles para capturar datos desde diferentes lugares de manera simultánea usando apenas una o varias líneas de código y analizar en profundidad la información obtenida una vez ordenados los datos.

R puede no ser tan versátil para obtener información de la web como lo es Python, puede manejar datos de sus fuentes más comunes como archivos de texto, CSV, hojas de cálculo Excel, etc. Para mitigar este problema, R dispone de paquetes creados para mitigar sus carencias como es el caso de Rvest que permite realizar una captura de datos web básico.

Exploración de datos

Python dispone de Pandas, una biblioteca pensada para facilitar el análisis de datos, filtrando, ordenando registros en cuestión de segundos. También permite limpiar datos, completar valores no válidos como NaN (no un número) con un valor que tenga sentido para el análisis numérico como 0.

Por contra R se creó precisamente para realizar análisis estadísticos y numéricos de grandes conjuntos de datos. Su funcionalidad básica abarca los conceptos básicos de análisis, optimización, procesamiento estadístico, optimización, generación de números aleatorios, procesamiento de señales y aprendizaje automático.

Esto hace que ofrezca un gran número de posibilidades en este ámbito. Podemos crear distribuciones de probabilidad y aplicar una batería de pruebas estadísticas y de aprendizaje automático en nuestros proyectos con una sencillez que incluso hoy hace palidecer a lenguajes mucho más modernos. Aunque para trabajos más pesados quizá deberemos recurrir a librerías de terceros para aprovechar todavía más su potencial.

Modelado de datos

Python permite hacer análisis de modelado numérico con Numpy, permite realizar cálculos avanzados con SciPy y nos ofrece el acceso a una gran cantidad de potentes algoritmos de aprendizaje automático gracias a la librería scikit-learn. En conjunto podemos aprovechar todo el poder que Python nos ofrece en modelado de datos sin complicaciones.

Por su lado, R es capaz también de realizar el modelado y análisis de datos específicos más allá de su funcionalidad principal. Para ello se suele hacer uso de alguno de los paquetes disponibles para análisis específicos, como es el caso de Poisson.

Visualización de datos

En Python contamos con varias opciones para trabajar con la visualización de datos. Lo más usual es trabajar con la librería Matplotlib que permite generar gráficos y tablas básicas a partir de datos incrustados. Aunque si necesitamos trabajar con gráficos más avanzados mi recomendación pasa por probar Plot.ly. Utilizando su API podemos generar en Python todo tipo de gráficos y paneles.

Y ya, por último, usando la función nbconvert podemos convertir nuestros trabajos en Python en documentos HTML e insertar fragmentos de código con un formato más amigable en sitios web interactivos.

Dicho esto, vamos con R. Como comentaba este lenguaje se creó principalmente para trabajar en análisis estadísticos y demostrar resultados. Debido a esto su ámbito fue principalmente académico y proporciona un potente entorno adecuado para la visualización científica con muchos paquetes especializados en la visualización gráfica de resultados de modo nativa para posteriormente guardar o exportar archivos en formato de imagen o PDF.

Al igual que en Python contamos con librerías específicas para para representación gráfica avanzada como ggplot2, muy utilizado para realizar gráficos de dispersión complejos con líneas de regresión.

R contra Python: Ejemplos

Importar un CSV

La única diferencia real es que, en Python, necesitamos importar la biblioteca Pandas para tener acceso al dataframe. En R, mientras, podríamos importar los datos usando la función base de R read.csv() con la ventaja de una mayor velocidad.

Encontrar el número de filas

Aunque la sintaxis y el formato difieren ligeramente, podemos ver que, en ambos idiomas podemos obtener la misma información con mucha facilidad.

El resultado anterior nos dice que este conjunto de datos tiene 841 filas y 31 columnas.

Inspeccionar la primera fila de datos

Nuevamente, podemos ver que aunque hay algunas ligeras diferencias de sintaxis, los dos lenguajes son muy similares. Más al detalle, la diferencia viene más en cómo Python y R interpretan los datos. Python al estar orientado a objetos utiliza head como un método en el objeto marco de datos mientras que R tiene una función separada. Estos son simplemente dos enfoques diferentes de programación, algo bastante común.

Encontrar promedios para cada estadística

Ahora podemos ver algunas diferencias importantes en los enfoques adoptados por R vs Python. En Python, el uso del método de la media dentro del marco de datos encontrará la media de cada columna de forma predeterminada mientras que en R la cosa es un poco más complicada.

Si no tienes experiencia en programación y todo esto te ha sonado un poco a chino y quieres aprender más. Te recomiendo que sigas este curso Introducción a la programación en R o el Curso de Python 3 desde cero.

Python vs R... ¿Cuál elegir?

Por lo general se considera que R es el mejor lenguaje de programación para cualquier profesional de la ciencia de datos, ya que posee un extenso catálogo de métodos estadísticos y gráficos.

Python, por otro lado, puede hacer prácticamente el mismo trabajo que R, los científicos de datos o los analistas de datos lo prefieren debido a su simplicidad y alto rendimiento. Mientras que R es un lenguaje de scripting poderoso y altamente flexible con una comunidad vibrante y un banco de recursos, Python es además un lenguaje orientado a objetos ampliamente utilizado que es fácil de aprender y depurar.

Como no hay una respuesta simple que responda a todos los posibles escenarios. Quizá la mejor manera de poder decidir es respondiendo a alguna de las siguientes preguntas antes tomar una decisión final:
¿Tienes experiencia programando en otros lenguajes?
Si tienes algo de experiencia en programación, Python podría ser el lenguaje más indicado. Su sintaxis es más similar a la de otros lenguajes en comparación con R y su sintaxis. Python se puede leer con facilidad y facilita que podamos desarrollar código más rápidamente.
¿Eres científico o ingeniero?
La verdadera diferencia entre Python y R radica en estar listo para producción. Python es un lenguaje de programación completo y muchas organizaciones lo utilizan en sus sistemas de producción y se integra mucho mejor que R. Sin embargo, para escribir código realmente eficiente, es posible que deba emplear un lenguaje de nivel inferior como C ++ o Java.

Por otro lado, R es un software de programación estadístico muy usado en el mundo académico.
¿Quieres aprender "aprendizaje automático" o "aprendizaje estadístico"?
Continuando con la pregunta anterior. Aquí debemos tener en consideración que el aprendizaje automático es un subcampo de la inteligencia artificial, mientras que el aprendizaje estadístico es un subcampo de la estadística.

Así el aprendizaje automático tiene un mayor énfasis en las aplicaciones a gran escala y la precisión de las predicciones; mientras que el aprendizaje estadístico enfatiza los modelos y su interpretabilidad, precisión e incertidumbre.
¿Necesitas visualizar tus datos en hermosos gráficos?
En lo particular considero que aquí se encuentra la actual batalla a librar. Para la creación rápida de prototipos y el trabajo con conjuntos de datos R va algo por delante por delante. Sin embargo, Python ha alcanzado algunos avances gracias a Matplotlib, pero R todavía parece ser mucho mejor en la visualización de datos.

Conclusión

Y llegamos al final y el momento en el que debemos responder cuál de los dos es el mejor lenguaje de programación. Tal como hemos descrito en el artículo los pros y contras de ambos son en realidad cuestiones que se resuelven en función del enfoque de uso que vayamos a dar.

Por ejemplo, Python es un lenguaje poderoso y versátil que los programadores pueden usar para una variedad de tareas en informática. Aprender Python es además fácil de aprender incluso si no eres programador y nos ayuda a desarrollar en la práctica cualquier conjunto de herramientas para ciencia de datos.

Por otro lado, R es un entorno de programación diseñado específicamente para el análisis de datos que es muy popular en la comunidad de ciencia de datos. Por lo que deberemos comprender R si queremos llegar lejos en la carrera de ciencia de datos pero requiere un tiempo mayor y cierta experiencia para hacerse con él.

Esto puede hacer que te sientas tentado a aprender ambos, o al menos comprender cómo usarlas sacando provecho de sus respectivas fortalezas. Y sucede que en cada artículo que encuentres en la red el debate entre Python y R siempre está confinado a sus posibilidades como lenguaje de programación pero debemos mirar un poco más allá. Lo que hace recomendable uno u otro lenguaje no es tanto su potencia, sino el uso que le vayamos a dar en nuestro proyecto. En definitiva. Usar más herramientas solo lo hará mejor como científico de datos.

Conclusión: Ambos idiomas son ganadores.

# data[].attributes.attachment_link.title
R vs Python: En qué se diferencian y en qué se parecen

# data[].attributes.attachment_link.description
Estoy seguro que este no es el primer artículo que visitas sobre el tema, hay cientos, miles de artículos que de un modo u otro comparan0 los dos idiomas de programación más extendidos en el mundo de la ciencia de datos y por tanto del análisis de datos en general.

# data[].attributes.body
En cuanto a Machine Learning, R tiene implementados una gran cantidad de algoritmos, como consecuencia de las diferentes líneas de investigación de grupos que dieron pie a su creación, debido precisamente al hecho de que R nació en el ámbito académico.

# data[].attributes.attachment_link.provider_name
Cómo Pasé De Usar Excel a Usar R Y Python

# data[].attributes.attachment_link.readable_text
Cómo pasé de analizar resultados con Excel a analizarlos con R+Python

Todo empezó cuando me mandaron hacer una práctica para la universidad en la que tenía que:

Desarrollar cuatro algoritmos diferentes.

Ejecutarlos en 20 casos diferentes, desde tamaño n = 20 hasta tamaño n = 256.

Hacer una documentación explicando el problema a resolver, cada algoritmo desarrollado e incluyendo un pseudocódigo de los mismos.

Incluir en dicha documentación un estudio estadístico de los resultados, valorando cada algoritmo en función de cómo había trabajado con casos grandes (n grande) o casos pequeños (n pequeño) y sobre la eficacia del algoritmo en comparación con el mejor resultado conocido y con los resultados obtenidos por el resto de algoritmos. Además, incluir gráficas que apoyaran tus conclusiones estaba "muy bien visto" (codo, codo, guiño guiño).

y todo esto en unas tres semanas aproximadamente.

Puedes ver una práctica del estilo en Optimizando código y evaluando el rendimiento

Dormida en los laureles

Empecé con bastante tranquilidad pensando que en dos semanas tendría todo el trabajo hecho y me quedaría otra semana extra para documentar. A la hora de realizar los algoritmos me encontré con algunos fallos y varios quebraderos de cabeza, pero pude tenerlos todos terminados en esas dos semanas. Empecé a hacer mi documentación explicando con todo detalle todo lo que había hecho, centrándome en obtener tanto una buena presentación como una buena redacción y, finalmente, me quedaron dos días para hacer lo más importante: el análisis de los resultados.

Para hacer el análisis, el profesor nos había dejado preparada una hoja de cálculo plantilla con todos los datos que teníamos que rellenar y calcular. En rellenar la maldita plantilla se me fue media mañana, por no decir la mañana entera, ya que en Calc tienes que introducir los decimales con una coma y Python los devolvía con un punto. A pesar de esto aún no cundía demasiado el pánico pues tenía otro día más.

Cuando ya calculé con Calc todo lo que había que calcular vino el problema: poner todos los datos que había calculado en mi documento de LaTeX. Un amigo me pasó un script que te permite exportar la tabla con sintaxis tabular de LaTeX pero, en la hoja de cálculo tenía las tablas que había hecho para todos y cada uno de los algoritmos y en mi documento tenían que ir separadas en secciones. Al final después de pelearme con Calc conseguí separar las tablas e incluirlas en mi documento, pero había perdido un precioso día para documentar y analizar los resultados que había estado todo el día preparando.

Último día. Kernel panic.

Llegó el último día que, como tenía clase por la tarde, era en realidad la última mañana. Decidí que sería una buena idea poner gráficas en mi documentación, pues con las tablas no me había dado como para escribir todo lo que me hubiese gustado y además, le darían a mi documento un extra de "profesionalidad".

Así que me dispuse a intentar generar un gráfico en la hoja de cálculo que tenía. Intenté todas las combinaciones posibles de datos, tipos de gráficos, colores, leyendas y demás herramientas que proporciona Calc para hacer gráficos y con ninguna obtenía un buen gráfico que realmente reflejase lo que quería. De hecho, lo más decente que pude obtener fueron dos gráficos que no decían absolutamente nada sobre los datos y que no supe ni siquiera etiquetar... supongo que por los nervios de que la entrega se aproximaba y mi análisis daba pena.

Estos son los gráficos que finalmente incluí en la que iba a ser la chachi documentación extra profesional a 5 minutos de que la entrega se cerrase.

¿Podéis sacar alguna conclusión de ellos? Yo no.

Tras el gran desastre que hice en la primera práctica, me prometí que no me pasaría lo mismo en la segunda. Tras un rato de reflexión, me di cuenta de que mi principal problema fue el tiempo que gasté metiendo datos en la hoja de cálculo a mano e intentando hacer una gráfica medio decente. Tareas tediosas y, sobre todo, que podría haber automatizado con un script.

Empecé a investigar cómo podría hacer un equivalente a mi hoja de cálculo, pero exportable a LaTeX y sin tener que usar Calc. Fue entonces cuando encontré el maravillo paquete de Python llamado tabulate. Este paquete, te permite generar a partir de una lista de listas una preciosa tabla en varios formatos (podéis consultarlos en su documentación) entre los que se encontraba tabular de LaTeX.

Tuve la suerte de haber hecho mi práctica en python, por lo que añadirle el script que voy a describir a continuación fue pan comido.

Si habéis leído la documentación de tabulate habréis visto que es bastante sencillo de usar: sólo hay que hacer una lista de listas, donde cada lista de la lista representa una fila de la tabla. En mi caso, la información que tenía que almacenar para cada algoritmo era:

La última columna era una forma de reflejar la diferencia del coste obtenido por el algoritmo con el mejor coste obtenido para ese caso del problema.

Mi script consistió en ejecutar todos los casos del algoritmo y guardar dos medidas, en dos listas separadas: tiempo de ejecución y coste de la solución obtenida. De antemano tenía guardados los distintos casos que tenía que ejecutar y las mejores soluciones conocidas de cada algoritmo, que usé para calcular la desviación de cada solución con la siguiente fórmula:

Una vez tenía estos datos, generé la tabla en formato LaTeX consultando las diferentes listas que había creado.

Una vez tuve mi script "hoja de cálculo" hecho, pasé a pensar cómo podría automatizar la creación de los gráficos que yo quería. Justo por esa época, @JJ dio una charla sobre Visualización de datos con R en la que describía el paquete ggplot2. El funcionamiento de ggplot2 es muy sencillo, y permite obtener gráficos muy bonitos e ilustrativos a partir de un Data frame.

Antes de describir el script en R que hice, quiero enseñaros los gráficos que obtuve para que los comparéis con los que obtuve con Calc.

¿Qué algoritmo funciona mejor en casos pequeños? ¿Y en casos grandes?

Este último gráfico lo hice con los datos de la práctica 2, en vez de con los de la práctica 1. Representa la convergencia a una solución, al ser algoritmos multiarranque, pueden llegar a una buena solución y después dar con otra peor. ¿Qué algoritmo da con la mejor solución? ¿Qué algoritmo converge más rápido?

Pasando datos de Python a R

ggplot2 era ideal, pero tenía un problema: ¿cómo paso mis datos de python a R? La respuesta no fue muy difícil de encontrar. Lo que hice fue añadir una función más a mi script en python que guardaba los datos de la "hoja de cálculo" en un fichero csv. Con el fichero csv de cada algoritmo, creaba un Data frame en R con los datos que me interesaban para mi gráfica.

Como también representaba en la gráfica los mejores resultados conocidos para cada caso, hice un csv para almacenarlos y poder leerlos con R. Esta función sólo tuve que ejecutarla una vez pues la mejor solución de cada caso es la misma la compares con el algoritmo que la compares.

Representando en R los datos

Una vez tenía los datos en ficheros csv sólo tenía que usar la función read.csv para convertirlos en un Data frame. En mi caso, como habréis visto en las gráficas, sólo estaba interesada en el coste obtenido por cada algoritmo en casos pequeños y grandes, por lo que obivé los datos relacionados con el tiempo de ejecución.

Una vez tenía un Data frame con los datos que quería representar en la gráfica, pasaba a realizar la gráfica con otra función. Debido a que quería representar tres medidas diferentes en la gráfica ( coste obtenido por cada algoritmo en algunos de los casos), tuve que hacer un tratamiento previo al Data frame para conseguirlo.

La función construye_datos aplicada sobre dos algoritmos "Ejemplo 1" y "Ejemplo 2" nos devuelve un Data frame con la siguiente forma:

De esos datos, como he dicho antes, sólo nos interesan los relativos al coste obtenido para cada caso. Por tanto, el primer "procesamiento" que debemos hacer al Data frame es quedarnos sólo con las columnas que nos interesan:

Una vez hecho esto, tenía que "reorganizar" el Data frame de forma que pasase a tener únicamente 3 columnas, que son las que iba a representar en la gráfica:

Como veis, usando la columna Caso como identificador, hemos reordenado la tabla de manera que, para cada algoritmo, tendremos un gráfico de barras representando el coste obtenido en cada caso.

Una vez explicado paso a paso el tratamiento que hice a los datos, paso a enseñar la función que hace la gráfica:

Por ejemplo, para obtener la gráfica de los algoritmos "Ejemplo 1" y "Ejemplo 2", realizaríamos la siguiente llamada:

Conseguí optimizar tanto el tiempo con estos scripts, que me sobró tiempo para implementar un gráfico de convergencia en R. Para ello, modifiqué mi práctica para que guardase en un csv cada coste que iba encontrando, para después representarlo en una gráfica. Una vez comprendida la función anterior, esta no tiene apenas ninguna diferencia:

El código de la práctica está disponible en el GitHub de Marta: github.com/mgmacias95/Analisis-Resultados-R-Python

Puedes consultar los siguientes atrículos sobre R y python:

¿Has visto algún error?: Por favor, ayúdame a corregirlo contactando conmigo o comentando abajo.

# data[].attributes.attachment_link.title
Cómo Pasé De Usar Excel a Usar R Y Python

# data[].attributes.attachment_link.description
Cómo pasé de analizar resultados con Excel a analizarlos con R+Python Todo empezó cuando me mandaron hacer una práctica para la universidad en la que tenía que: Desarrollar cuatro algoritmos diferentes. Ejecutarlos en 20 casos diferentes, desde tamaño n = 20 hasta tamaño n = 256 .

# data[].attributes.body
Por un lado, R es un software para análisis estadísticos y gráficas mientras que python es un lenguaje de programación de propósito general (ya vamos a ver un poco más a qué nos referimos con eso).Sin embargo, el eje sobre el que va a girar este vídeo es que ambos son herramientas que vamos a utilizar para lograr obtener valor a partir de los datos esa es toda nuestra primicia.Vamos a ver. En primer lugar podemos hablar de la dificultad del aprendizaje.Dificultad de aprendizajeEn mi caso, R fue más sencillo de aprender pero esto lo veo porque yo vengo de un mundo de matemáticas y estadística en donde estamos muy acostumbrados a trabajar con los datos análisis y hacer cosas como pruebas de hipótesis o regresiónpor otro lado para esto me costó un poco más aprenderlo porque a la hora de meterme en el lenguaje me tocó aprender cosas como programación orientada a objetos métodos clases y otros conceptos con los cuales no era familiar para míPor eso creería que si vienes del mundo de programación, python puede ser la opción más sencilla de aprender para ciencias de datos.Sin embargo creo que ambos lenguajes son sencillos. Ya digamos que ha pasado un tiempo en el que he podido trabajar con ambos lenguajes creo que son mucho más fáciles de aprender considerando otras propuestas como pudieran ser java cobol c++ o incluso otros mucho más complicadosAsí que este sería el primer punto que yo tomaré en cuenta para diferenciar R y python y cómo pueden complementarse.Objetivo de uso de datosEl segundo punto que creo que es fundamental para decidir que el lenguaje mejor para ti es el objetivo del uso de datos. Con esto, me refiero a que R es bueno para hacer análisis estadísticos y reportes en general.Por otro lado, si lo que te llama la atención es construir software, la ingeniería, procesos de datos donde descargas, transformas, cargas para hacer luego un producto de datos que pueda funcionar en alguna empresa o al público entonces puede ser de más interés para ti aprender python.También considero que python es mucho mejor para integrarse con otros programas como pudiera ser el caso de spark o algún tipo de desarrollo web.En tercer punto que creo que puede ser importante para decidir si para ti es mejor r o python o cuál de los dos el mejor lenguaje es el tipo de persona que lo va a usarTipo de persona que lo utilizanAquí voy a poner dos perfiles el primero sería más de investigación. En este sentido, R es utilizado por académicos o científicos para obtener mayor conocimiento acerca de sus estudios ya sea en biología, psicología, matemática o alguna otra rama del conocimiento.También es utilizado por analistas de negocio o el área de business intelligence para también sacar información que pueda ser útil para las altas directivos de la empresa tomar alguna decisión de negocio.Por otro lado, consideró que python es más utilizado en lo que tiene que ver con ingeniería de software e ingeniería de datos. Con esto, me refiero a cosas como los procesos de extracción, transformación y carga (ETL en inglés). En donde el interés es, quizás, ir a muchas fuentes de datos todas ellas integrarla y transformarla en cierta forma para dar un auto mucho más valioso.Esto pudieran ser casoss como el de netflix o el de google que toman un montón de información para recomendarte ciertas cosasConclusiónEntonces dependiendo del perfil en el que tú te veas puede ser más conveniente o puede ser mejor lenguaje para ti o python ahora así que con estas tres ideas de la que hemos hablado tiene un montón de información para poder decidir que lenguaje es mejor.

# data[].attributes.body
R es un software para análisis estadísticos y gráficas mientras que Python es un lenguaje de programación de propósito general.

# data[].attributes.body
Realizar una investigacion y un resumen comparativo entre R y Python como herramientas complementarias en el analisis de datos.

# data[].attributes.headline
¿Qué lenguaje utilizar para ciencia de datos?

# data[].attributes.subject
¿Qué lenguaje utilizar para ciencia de datos?

# data[].attributes.body
R y Python son excelentes lenguajes de programación, por lo que ambos se pueden utilizar en este campo de manera óptima. Para poder dar respuesta a esta pregunta antes debemos analizar las siguientes cuestiones:

–¿Qué necesitamos? Por ejemplo, R es una opción recomendada si necesitamos hacer un análisis estadístico exhaustivo o un análisis independiente a realizar en una máquina. Por su parte, Python es una buena elección cuando los datos a tratar provienen de diferentes plataformas que hay que integrar con nuestro desarrollo (webs, bases de datos, etc.).