49  R sur les lecteurs réseau

49.1 Aperçu

L’utilisation de R sur des lecteurs partagés du réseau ou de “l’entreprise” peut présenter des défis supplémentaires. Cette page contient des approches, des erreurs courantes et des suggestions de dépannage tirées de notre expérience de travail sur ces questions. Cela inclut des conseils pour les situations particulièrement délicates impliquant R Markdown.

Utilisation de R sur des lecteurs réseau : Principes généraux

  1. Vous devez obtenir un accès administrateur pour votre ordinateur. Configurez RStudio spécifiquement pour qu’il s’exécute en tant qu’administrateur.
  2. Enregistrez les paquets dans une bibliothèque située sur un lecteur portant une lettre (par exemple, “C :”) lorsque cela est possible. Utilisez le moins possible une bibliothèque de paquets dont le chemin commence par “\".
  3. Le paquet rmarkdown ne doit pas être dans une bibliothèque de paquets “\", car alors il ne peut pas se connecter à TinyTex ou Pandoc.

49.2 RStudio en tant qu’administrateur

Lorsque vous cliquez sur l’icône RStudio pour ouvrir RStudio, faites-le avec un clic droit. Selon votre machine, vous verrez peut-être une option “Exécuter en tant qu’administrateur”. Sinon, vous verrez peut-être une option permettant de sélectionner Propriétés (une fenêtre devrait alors apparaître avec l’option “Compatibilité”, et vous pourrez cocher la case “Exécuter en tant qu’administrateur”).

49.2.1 Commandes utiles

Vous trouverez ci-dessous quelques commandes utiles lorsque vous essayez de résoudre des problèmes en utilisant R sur des lecteurs réseau.

Vous pouvez renvoyer le(s) chemin(s) des bibliothèques de paquets que R utilise. Ils seront listés dans l’ordre que R utilise pour installer/charger/rechercher les paquets. Ainsi, si vous voulez que R utilise une autre bibliothèque par défaut, vous pouvez changer l’ordre de ces chemins (voir ci-dessous).

# Recherche de bibliothèques
.libPaths() # Vos chemins de bibliothèques, listés dans l'ordre d'installation/de recherche de R. 
                              # Note : toutes les bibliothèques seront listées, mais pour en installer certaines (par exemple C :), vous devrez peut-être exécuter RStock. 
                              # devrez peut-être exécuter RStudio en tant qu'administrateur (cela n'apparaîtra pas dans le menu déroulant 
                              # menu déroulant des bibliothèques d'installation des paquets) 

Vous pouvez vouloir changer l’ordre des bibliothèques de paquets utilisées par R. Par exemple, si R récupère un emplacement de bibliothèque qui commence par “\" et un autre qui commence par une lettre, par exemple”D :“. Vous pouvez ajuster l’ordre de .libPaths() avec le code suivant.

# Changer l'ordre des bibliothèques
# Ceci peut affecter la priorité de R à trouver un paquet. Par exemple, vous pouvez vouloir que votre bibliothèque C : soit listée en premier.
myPaths <- .libPaths() # obtenir les chemins d'accès
myPaths <- c(myPaths[2], myPaths[1]) # les commuter
.libPaths(myPaths) # les réaffecter

Si vous avez des difficultés à connecter R Markdown à Pandoc, commencez par ce code pour savoir où RStudio pense que votre installation Pandoc se trouve.

# Trouver Pandoc
Sys.getenv("RSTUDIO_PANDOC") # Trouver où RStudio pense que votre installation Pandoc se trouve

Si vous voulez voir à partir de quelle bibliothèque un paquet est chargé, essayez le code suivant :

# Trouver un paquetage
# donne le premier emplacement du paquet (notez l'ordre de vos bibliothèques)
find.package("rmarkdown", lib.loc = NULL, quiet = FALSE, verbose = getOption("verbose")) 

49.3 Dépannage des erreurs courantes

“Failed to compile…tex in rmarkdown”
* Vérifiez l’installation de TinyTex, ou installez TinyTex à l’emplacement C :. Voir la page R - les basespour savoir comment installer TinyTex.

# vérifiez/installez tinytex, à l'emplacement C :.
tinytex::install_tinytex()
tinytex:::is_tinytex() # devrait retourner VRAI (notez les trois deux points)

Les routines Internet ne peuvent pas être chargées.

Par exemple, Erreur dans tools::startDynamicHelp() : les routines internet ne peuvent pas être chargées.

  • Essayez de sélectionner la version 32 bits de RStudio via Tools/Global Options.
    • Note : si la version 32 bits n’apparaît pas dans le menu, assurez-vous que vous n’utilisez pas RStudio v1.2.
  • Alternativement, essayez de désinstaller R et de le réinstaller avec une version différente (32 au lieu de 64).

C : la bibliothèque n’apparaît pas comme une option lorsque j’essaie d’installer les paquets manuellement.

  • Lancez RStudio en tant qu’administrateur, cette option apparaîtra alors.
  • Pour configurer RStudio pour qu’il soit toujours exécuté en tant qu’administrateur (avantageux lorsque vous utilisez un projet R où vous ne cliquez pas sur l’icône RStudio pour l’ouvrir)… cliquez avec le bouton droit de la souris sur l’icône Rstudio.

L’image ci-dessous montre comment vous pouvez sélectionner manuellement la bibliothèque dans laquelle installer un paquet. Cette fenêtre apparaît lorsque vous ouvrez le volet Packages RStudio et cliquez sur “Installer”.

Pandoc 1 erreur

Si vous obtenez “pandoc error 1” lorsque vous tricotez des scripts R Markdowns sur des lecteurs réseau :

  • Sur plusieurs emplacements de bibliothèque, faites en sorte que celui qui a un lecteur avec une lettre soit listé en premier (voir les codes ci-dessus).
  • La solution ci-dessus a fonctionné lors du tricotage sur le lecteur local, mais lors d’une connexion Internet en réseau.
  • Voir plus de conseils ici : https://ciser.cornell.edu/rmarkdown-knit-to-html-word-pdf/

Erreur Pandoc 83

L’erreur ressemblera à quelque chose comme ceci : Impossible de trouver le fichier...rmarkdown...lua.... Cela signifie qu’il n’a pas pu trouver ce fichier.

Voir https://stackoverflow.com/questions/58830927/rmarkdown-unable-to-locate-lua-filter-when-knitting-to-word

Possibilités :

  1. Le paquet Rmarkdown n’est pas installé
  2. Le paquet Rmarkdown n’est pas trouvable
  3. Un problème de droits d’administration.

Il est possible que R ne soit pas capable de trouver le fichier du paquet rmarkdown, donc vérifiez dans quelle bibliothèque se trouve le paquet rmarkdown (voir le code ci-dessus). Si le paquet est installé dans une bibliothèque inaccessible (par exemple, commençant par “\"), pensez à le déplacer manuellement vers C : ou une autre bibliothèque de lecteur nommée. Soyez conscient que le paquet rmarkdown doit pouvoir se connecter à l’installation de TinyTex, et ne peut donc pas être installé dans une bibliothèque sur un lecteur réseau.

Erreur Pandoc 61

Par exemple : Erreur : la conversion du document pandoc a échoué avec l'erreur 61 ou Impossible d'aller chercher....

  • Essayez d’exécuter RStudio en tant qu’administrateur (cliquez avec le bouton droit de la souris sur l’icône, sélectionnez exécuter en tant qu’administrateur, voir les instructions ci-dessus).
  • Voir également si le paquet spécifique qui n’a pas pu être atteint peut être déplacé vers la bibliothèque C :.

Erreur LaTex (voir ci-dessous).

Une erreur du type : ! Paquet pdftex.def Erreur : File 'cict_qm2_2020-06-29_files/figure-latex/unnamed-chunk-5-1.png' non trouvé : utilisation de la fonction brouillon. ou Erreur : LaTeX n'a pas réussi à compiler file_name.tex..

  • Voir https://yihui.org/tinytex/r/#debugging pour des conseils de débogage.
  • Voir file_name.log pour plus d’informations.

Erreur Pandoc 127

Cela peut être un problème de RAM (espace). Redémarrez votre session R et réessayez.

Mappage de lecteurs réseau

Le mappage d’un lecteur réseau peut être risqué. Consultez votre service informatique avant d’essayer.

Un conseil emprunté à cette discussion du forum :

Comment ouvrir un fichier “via un lecteur réseau mappé” ?

  • Tout d’abord, vous devez connaître l’emplacement réseau auquel vous essayez d’accéder.
  • Ensuite, dans le gestionnaire de fichiers de Windows, vous devez cliquer avec le bouton droit de la souris sur “Ce PC” dans le volet de droite, et sélectionner “Mapper un lecteur réseau”.
  • Passez par la boîte de dialogue pour définir l’emplacement réseau de tout à l’heure comme un lecteur de lettres.
  • Maintenant, vous avez deux façons d’accéder au fichier que vous ouvrez. L’utilisation du chemin d’accès par lettre du lecteur devrait fonctionner.

Erreur dans install.packages()

Si vous obtenez une erreur qui inclut la mention d’un répertoire “verrouillé”, par exemple : `Erreur dans install.packages : ERROR : échec du verrouillage du répertoire…``

Regardez dans votre bibliothèque de paquets et vous verrez un répertoire dont le nom commence par “00LOCK”. Essayez les astuces suivantes :

  • Supprimez manuellement le répertoire du dossier “00LOCK” de votre bibliothèque de paquets. Essayez d’installer à nouveau le paquetage.
  • Vous pouvez aussi essayer la commande pacman::p_unlock() (vous pouvez aussi mettre cette commande dans le Rprofile pour qu’elle s’exécute à chaque fois que le projet s’ouvre). Ensuite, essayez à nouveau d’installer le paquet. Cela peut prendre plusieurs essais.
  • Essayez d’exécuter RStudio en mode Administrateur, et essayez d’installer les paquets un par un.
  • Si tout le reste échoue, installez le paquet dans une autre bibliothèque ou un autre dossier (par exemple Temp), puis copiez manuellement le dossier du paquet dans la bibliothèque souhaitée.