Archive du forum du MOOC Recherche Reproductible Session 2

Pb d’installation rpy2 sous debian stretch

anneAF

Bonjour,
j’ai suivi l’installation de jupyter sur mon ordinateur.
Téléchargé et installé miniconda.
Téléchargé et déployé l’environnement mooc_rr.
J’ai installé python3-rpy2 et python3-tzlocal.
Je peux créer un notebook en R.
Mais à partir d’un notebook python, le chargement de rpy2 avec la commande magique %load_ext me retourne l’erreur ModuleNotFoundError: No module named ‘rpy2’.
Je ne refuse pas un petit coup de main.
Merci,
Anne

mgdondon

Bonjour,

Les notebooks R requièrent le package R IRKernel alors que les notebooks Python requièrent le package Python rpy2 pour exécuter du code R.

L’erreur

ModuleNotFoundError: No module named `rpy2

fait penser que le chemin n’est pas connu (sous Windows il faut ajouter les chemins dans la variable d’environnement PATH).

Par ailleurs, il faut importer rpy2.ipython plutôt que rpy2 mais je ne pense pas que ce soit l’origine de votre problème (dans ce cas on obtient le message The rpy2 module is not an IPython extension).

Capture

Pour finir, je vous signale un notebook Python appelant du code R sans utiliser les commandes magiques ici.

Cordialement,

anneAF

Bonjour,
merci pour votre réponse.
Le chemin miniconda3 a bien été ajouté à la variable PATH.

echo $PATH

/home/af/miniconda3/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/snap/bin

Le paquet python3-rpy2 est bien installé.

sudo apt search python3-rpy2

python3-rpy2/stable,now 2.8.5-1 amd64 [installé]

Python3 interface to the GNU R language and environment (version 2)

Mais pas trouvé, est-ce lié à l’environnement mooc_rr que j’active avant de lancer jupyter notebook ??

source activate mooc_rr
jupyter notebook

et dans un notebook python :

%load_ext rpy2.ipython

et

from rpy2.robjects import pandas2ri

donne la même

erreur


ModuleNotFoundError Traceback (most recent call last)
in <module>()

----> 1 from rpy2.robjects import pandas2ri

ModuleNotFoundError: No module named ‘rpy2’

Merci pour votre aide.
Anne

mgdondon

Bonjour,

Il est normal que from rpy2.robjects import pandas2ri ne trouve pas davantage rpy2. J’indiquais seulement une autre façon d’exécuter du code R dans un notebook Python.

Pour info j’ai les chemins suivants dans le PATH :

C:\Program Files\Python\Python37\
C:\Program Files\Python\Python37\Scripts
C:\Program Files\Python\Python37\Lib\site-packages\rpy2 

Je n’utilise pas Miniconda mais vous pouvez essayer d’ajouter le chemin du package rpy2 dans le PATH.

Cordialement,

anneAF

Bonjour,
comme j’avais déjà deux versions de python (2.7 et 3.5) et R installé sur mon poste, j’ai fini par désinstaller miniconda et ré-installer jupyter. En gérant les deux versions de python pour installer les paquets. J’ai donc 3 noyaux python2, python3 et R. Cela va beaucoup mieux.
Merci pour l’aide.
Anne