Python en RStudio

Python
RStudio
R Markdown
R
Quarto
Autor

Pedro L. Luque

Fecha de Publicación

2 octubre 2022

Python en RStudio

En este artículo quiero presentar una serie de vídeos en la que se demuestra cómo usar Python en RStudio, desde la instalación de Python en Windows hasta el uso compartido de objetos de R y Python en documentos R Markdown y Quarto.

RStudio en octubre de 2022 va a pasar a llamarse Posit, parece que el principal motivo es que los científicos de datos puedan usar R y Python de forma colaborativa con sus aplicaciones, pero no solamente con estos lenguajes sino con la posibilidad de añadir otros.

Inicialmente son 4 vídeos los que componen esta serie, pero adelanto que habrá más.

Nota

Se recomienda tener instaladas versiones recientes de R (versión 4.2 en adelante) y de RStudio (versión 2022.07 en adelante). Más información en la serie “Vídeos: Relacionados con el uso de R y RStudio”

El objetivo inicial que me había marcado al crear este material era aclarar que los dos lenguajes, R y Python, pueden convivir y se puede usar lo mejor de cada uno de ellos, sin renunciar a ninguno.

Desde mi punto de vista como usuario habitual del lenguaje R, me tranquiliza que pueda seguir usando todos mis conocimientos de R y además pueda añadirle todas las características del lenguaje Python, lo que hará aún más potente el código que desarrolle.

Vídeo: Python y R en RStudio con el paquete “reticulate” (Parte 1)

Los apartados que cubre este primer vídeo son:

  • Instalación de Python en Windows.
  • Instalación del paquete R: “reticulate”.
  • Consulta de la configuración de Python en las opciones generales de RStudio.
  • Creación de ficheros de scripts Python en RStudio. Se muestra código Python básico trabajando con vectores (el índice inicial en Python es 0).
  • Usar la consola de RStudio para ejecutar código Python (para abandonar la consola Python “>>>” se debe teclear: exit).

Vídeo: Python y R en RStudio con el paquete “reticulate” (Parte 2)

En este segundo vídeo se cubren los siguientes apartados:

  • Se muestra cómo instalar paquetes Python (“numpy”) desde el “Terminal de RStudio”.
    • En Windows: py -m pip install "numpy"

    • En Mac/Linux: python3 -m pip install "numpy"

      • Para desinstalar un paquete: pip3 uninstall numpy y volver a instalar: pip3 install numpy.
  • Se demuestra con varios scripts Python (extensión “.py”):
    • cómo usar el paquete: “numpy” (trabajar con arrays)

    • cómo se definen funciones en Python (atención al indentado del código)

    • usar el paquete “pandas” e importar ficheros “csv”

  • Se crea una función python en un script python, que luego es llamada desde un script R para crear un gráfico con ggplot2 (“colaborar entre varios lenguajes).

Vídeo: Python y R en RStudio con el paquete “reticulate” (Parte 3)

Los apartados que cubre este tercer vídeo son:

  • Se muestra cómo usar desde scripts R con ayuda del paquete R “reticulate”, funciones Python de paquetes Python a través de la llamada a la función “import()”.
    • Se demuestra con el paquete Python “os” especializado en manipular ficheros del sistema operativo.

    • También se puede observar cómo RStudio nos facilita el listado de funciones Python disponibles en ese paquete.

  • Se instala y usa la librería Python: “matplotlib”. Se ilustra en un script Python cómo hacer representaciones gráficas con esta librería, y cómo desde RStudio se pueden ver los gráficos resultantes, del mismo modo que si fuesen gráficos creados con R.
  • También se crea un script Python en el que se hace un programa interactivo en el que el usuario del programa tiene que responder a determinadas preguntas en la consola de RStudio.
    • Se ilustran algunos conceptos básicos de programación en Python: “while”, “print”, “input”, generación de números aleatorios con el paquete “random”.
  • Se muestra cómo es posible incluir en un mismo documento R Markdown chunks de código en “R” y en “Python” con ayuda del paquete “reticulate”. Se utilizan varios ejemplos.
    • Ejemplo en el que no comparten información los lenguajes R y Python.

    • Ejemplo en el que sí se comparte información en las llamadas. El paquete “reticulate” crea el objeto R: “py” a través del cual se puede consultar información generada en el código Python.

  • Las salidas generadas al pulsar el botón “Knit” en el vídeo son “html” pero igualmente se pueden generar documentos “pdf”, “docx” u otros.

Vídeo: Python y R en RStudio con el paquete “reticulate” (Parte 4)

Y en este último vídeo, los apartados que se cubren son:

  • Se muestra cómo crear documentos Quarto (evolución de los documentos R Markdown) en los que con ayuda del paquete R “reticulate”, se pueden introducir también chunks de código Python y R (y de otros lenguajes).
  • Se muestra también el uso en RStudio del nuevo Editor Visual para trabajar con documentos: R Markdown y más especialmente Quarto, que nos permite trabajar con documentos viendo cómo va a quedar el fichero resultante al modo de aplicaciones como “Word de Microsoft”.
  • Se ilustran algunas de las nuevas habilidades disponibles fácilmente en documentos Quarto como son: colapsar o esconder el código generado (“code-folding”) en las salidas, la generación de referencias dentro de documentos, etc.
  • Se visita la página oficial de Quarto: https://quarto.org, la cual se recomienda visitar para conocer todas las posibidades que facilita esta nueva herramienta integrada en RStudio.
  • Se ilustra también el uso de otro lenguaje en documentos Quarto: “observable”, que permiten a través de “javascript” incorporar elementos interactivos en documentos “html” al estilo de una aplicación web.
  • Finalmente, se muestra que en estos documentos Quarto y R Markdown, se puede ejecutar desde RStudio el código de los chunks (R o Python) a la vez que se escribe el informe.

Referencias

Código