Ir al contenido principal

Posit Cloud - como instalar librerías de Python en el entorno de R

 Ahora que estamos tomando una maestría buscando que siga "girando la ardilla" por unos años más en la materia de "Cómputo Estadístico" nos ha sugerido usar la versión gratuita de Posit en la nube.

En su página definen este producto como "es una solución basada en la nube que permite acceder al poderoso conjunto de herramientas de ciencia de datos de Posit directamente en el navegador web  - sin requerir instalación o configuraciones complejas".

Para los usuarios que han utilizado Posit RStudio en primera instancia verán el entorno muy similar a Posit Cloud con algunas pequeñas diferencias, para empezar necesitamos un usuario o contraseña aunque es posible autenticarse usando alguna cuenta existente como es el caso de Google.

Con el tiempo y trabajando en desarrollo de software, vamos entendiendo que quizás el nombre queda muy grande a los pequeños ejemplos, pero es muy recomendable el uso de proyectos siempre. A continuación vemos el entorno Posit Cloud.


Quizás aquí no se ve tanto la similitud con Posit RStudio, pero si creamos un proyecto o bien abrimos uno, ahora si veremos el entorno del que sin duda es el IDE más popular para programar en R.


Sin embargo, aunque tiene su sección gratuita tiene limitaciones y hay diversos planes para tener mayores recursos, como se describe a continuación:


Este artículo quizás sirva para usuarios también con la versión de escritorio pero es algo que todavía no lo pruebo.

Bien, uno de los objetivos es que la clase se llevó en R, pero la doctora encargada de la materia nos pidió que lo replicáramos en Python. Al empezar a introducir código con el conjunto básico no hubo problemas; sin embargo, cuando se necesito instalar algunas librerías de Python, mandaba un mensaje que la librería no se encontraba, por lo que se procede a instalarla como en meses pasados se hacía para Visual Studio Code (tampoco se si será necesario o solo con instalarlo con reticulate como lo vemos a continuación), sin embargo esto no funcionó. Cabe resaltar que es un documento RMarkdown con chunks de Python.
En este caso la IA de Google al cuestionar en el navegador por el mensaje que me arrojaba...

"Traceback (most recent call last): File "<string>", line 1, in <module> File "/cloud/lib/x86_64-pc-linux-gnu-library/4.5/reticulate/python/rpytools/loader.py", line 122, in _find_and_load_hook return _run_hook(name, _hook) ^^^^^^^^^^^^^^^^^^^^^^ File "/cloud/lib/x86_64-pc-linux-gnu-library/4.5/reticulate/python/rpytools/loader.py", line 96, in _run_hook module = hook() ^^^^^^ File "/cloud/lib/x86_64-pc-linux-gnu-library/4.5/reticulate/python/rpytools/loader.py", line 120, in _hook return _find_and_load(name, import_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/cloud/lib/x86_64-pc-linux-gnu-library/4.5/reticulate/python/rpytools/loader.py", line 122, in _find_and_load_hook return _run_hook(name, _hook) ^^^^^^^^^^^^^^^^^^^^^^ File "/cloud/lib/x86_64-pc-linux-gnu-library/4.5/reticulate/python/rpytools/loader.py", line 96, in _run_hook module = hook() ^^^^^^ File "/cloud/lib/x86_64-pc-linux-gnu-library/4.5/reticulate/python/rpytools/loader.py", line 120, in _hook return _find_and_load(name, import_) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ModuleNotFoundError: No module named 'matplotlib'"

Esto fue para el caso de matplotlib al querer utilizar esta librería - el mensaje dice módulo - en el siguiente chunk de Python.

```{python}
import numpy as np
import matplotlib.pyplot as plt
from statsmodels.graphics.tsaplots import plot_acf

np.random.seed(123)

u_good = np.random.uniform(0, 1, 1000)

print(f"Los primeros 5 números: {u_good[:5]}")

...

```
Reflexionando y usando el sentido común estamos en un RMarkdown por lo que no es suficiente con usar pip install y la solución era en la consola de R, teclear reticulate::py_install("matplotlib") para el caso de graficación en general.
Sin hacer pruebas suficientes para el paquete (módulo) de statsmodels necesario para graficar el coeficiente de correlación, primero se cargó la librería y luego se instaló el módulo.

library("reticulate")
py_install("statsmodels")

Aquí el resultado en el pdf que genera RMarkdown.


Hasta aquí el artículo de este descubrimiento y esta nueva herramienta que es Posit Cloud.

Miguel Araujo.



Comentarios

Entradas populares de este blog

La librería openxlsx

En el Instituto se utiliza como herramienta de trabajo institucional la suite de ofimática MS Office que ofrece un precio asequible aunque lo actual en el mundo del software es el esquema de suscripciones el que casi se ha convertido en el común de las empresas gigantes de las tecnologías de la información. Es por ello que si bien en un principio que se usaban las bibliotecas XLConnectJars   y XLConnect, al tratar de bajarlas e instalarlas se descubrió - en aquel entonces - que estaban obsoletas. Es por ello que se volteo a la que revisaremos superficialmente en este artículo. Lo primero como siempre es descargar la librería openxlsx que se puede hacer desde el mismo Posit RStudio. Vamos a recrear un cuadro existente en el sitio del Instituto que debido a la crisis sanitaria iniciada en 2020 cobra una relevancia muy importante: "Las principales causas de muerte" que de forma anecdótica   fue la primera aplicación en la cual me pidieron que participara, un programa escri...

R 1a Parte

En nuestro Instituto durante años se ha utilizado diversas herramientas para el procesamiento de información de acuerdo a las necesidades y también al expertise del personal. En tiempos de austeridad republicana las herramientas de software libre sin duda tomarán más importancia en las áreas de estadística del Instituto y si agregamos que cuentan con la venía de nuestro emperador hemos empezado a transitar por este camino. En su sitio oficial  se define como "R es un software gratuito para cómputo estadístico y gráficos. Compila y se ejecuta en múltiples plataformas de UNIX, Windows y MacOS". Llevo un par de cursos referentes a este lenguaje de programación que de hecho en la clasificación de los lenguajes en un principio era catalogado como funcional, ahora si revisamos Wikipedia aparece como multi-paradigma, aunque los principios de programación son los mismos tiene características muy especiales que intuyo vienen del calculo vectorial.