web-dev-qa-db-fra.com

Erreur dans le fichier gz (fichier, "wb"): impossible d'ouvrir la connexion ou le fichier compressé

J'essaie d'exécuter deux choses: d'abord, je crée un PDF avec 4x5, se terminant par dev.off (), puis j'essaie de créer un nouveau graphique. Cependant, après avoir démarré le deuxième complot, je reçois:

Error in gzfile(file, "wb") : cannot open the connection
In addition: Warning message:
In gzfile(file, "wb") :
  cannot open compressed file '/var/folders/n9/pw_dz8d13j3gb2xgqb6rfnz00000gn/T/RtmpTfm1Ur/rs-graphics-822a1c83-b3fd-46c3-8028-4e0778f91d0c/4db4b438-ac35-403b-b791-e781baba152c.snapshot', probable reason 'No such file or directory'
Graphics error: Error in gzfile(file, "wb") : cannot open the connection

Quelle est cette erreur? Le répertoire de travail est celui auquel j'ai accès en lecture/écriture et mon disque dur n'est pas plein.

En outre, j'utilise RStudio.

13
Andrew Min

Cela m'a brûlé et, espérons-le, sauve du travail à quelqu'un d'autre. Le problème était que les classificateurs chargés correctement sous OS X mais sur le système de déploiement Linux échouaient avec l'erreur indiquée dans la question. Le problème était que les fichiers sur le disque avaient l'extension abc.RData mais le code modelAbc <- readRDS(file="abc.Rdata"). La différence entre D minuscule et minuscule dans l'extension .RData et .Rdata échouerait sous Linux. Ce n'était pas très perceptible mais vérifiez vos extensions pour le cas.

6
Joshcodes

Peut-être devriez-vous regarder ici . À la fin il dit 

Remarque: La cause la plus fréquente d’échec est le manque d’autorisation en écriture dans le répertoire actuel. Pour save.image et pour sauvegarder à la fin d'une session, ceci sera indiqué par des messages comme

Error in gzfile(file, "wb") : unable to open connection
In addition: Warning message:
In gzfile(file, "wb") :
  cannot open compressed file '.RDataTmp',
  probable reason 'Permission denied'

Si rapidement, si vous essayez getwd(), regardez où se trouve votre répertoire de travail. Si vous essayez de sauvegarder votre document dans un endroit où il ne se trouve pas dans votre répertoire de travail actuel, cette erreur sera générée.

À la fin de votre message d'erreur, il est indiqué probable reason 'No such file or directory' Graphics error: Error in gzfile(file, "wb") : cannot open the connection Mon diagnostic serait simplement qu'il tente de sauvegarder votre élément au mauvais endroit et que RStudio n'est pas en mesure de trouver le bon endroit. 

3
M. Beausoleil

C'est un peu tard mais pour tous ceux qui viennent ici pour demander de l'aide, j'ai eu cette erreur lorsque j'essayais d'écrire un fichier à partir de RStudio et le chemin du fichier de destination était très long. J'ai réalisé que cela pouvait poser un problème, car lorsque j'ai écrit le fichier dans un autre emplacement avec un nom plus court et que j'ai essayé de le copier dans ma destination d'origine, Windows m'a renvoyé une erreur en indiquant "Chemin du fichier trop long". Vous devrez peut-être enregistrer le fichier d'origine dans un autre emplacement avec un chemin absolu plus court.

2
AHegde

J'ai fait face à ce problème récemment. Essayez d’éteindre votre antivirus et de construire le paquet, cela pourrait aider. Cela a fonctionné pour moi. Généralement, l'antivirus bloque les autorisations et vous pouvez l'éviter en le désactivant juste avant de générer un package.

1
Chanukya Patnaik

Problème résolu en spécifiant le chemin complet du fichier:

saveRDS(df,'C:\\users\\matt\\desktop\\code\\df.Rdata')
1
user2723494

Vous n’avez peut-être pas l’autorisation de sauvegarder le fichier dans le répertoire. Sous RStudio, récupérez votre répertoire de travail par getwd(). Ensuite, allez dans le répertoire sous Linux et observez son propriétaire par ls -l. Vous pouvez maintenant changer le propriétaire du répertoire en chown -R username directoryname. Mais vous devez être root.

1
Young Pang

Je viens de rencontrer ce problème après avoir changé les paramètres régionaux de mon système. Vérifiez vos paramètres régionaux à l’aide de Sys.getlocale(). Modifiez-le pour choisir celui qui vous convient en utilisant Sys.setLocale("LC_ALL","ENG") (remplacez "ENG" par celui qui convient)

Je ne peux pas dire avec certitude quels paramètres régionaux seraient appropriés, mais cela semble cohérent avec celui par défaut du système d'exploitation. 

J'espère que cela t'aides!

0
Yoon Jae Jang

J'ai eu le même problème.Pour moi, cela était dû à un manque d'espace disque sur le lecteur sur lequel R studio était installé.Libérer de l'espace fonctionne. 

0
malineni maurya

Je veux juste ajouter plus de clarté (scénarios selon mon expérience) à ce que M. Beausoleil a mentionné. 

Lorsque vous utilisez un répertoire de travail partagé et tentez de réécrire les fichiers RDS qui existent déjà dans un répertoire de travail écrit par un autre utilisateur, vous obtenez cette erreur.

Comme certaines personnes ont déjà cité cela, la suppression des fichiers RDS existants ou la modification du répertoire de travail fonctionne. Ce n'est pas une magie. Cela fonctionne simplement parce que vous écrivez un nouveau fichier RDS et n'essayez pas de ré-écrire les anciens.

0
Harish Sripathi

J'ai également eu ce problème lorsque je travaillais avec RStudio et R Markdown. Je recevais ce message d'erreur et j'avais un nombre ennuyeux d'erreurs fatales qui fermaient RStudio. Mon problème était que je travaillais sur un lecteur réseau et que le nom était trop long, comme dans @AHedge ci-dessus, ou que les pare-feu de mon réseau me causaient des problèmes. Pour le moment, j'ai déplacé mes fichiers de travail sur mon bureau et tout semble bien fonctionner. Je ne sais pas ce que cela signifie pour la gestion de mes fichiers au fil du temps.

0
Adrienne B

La raison de cette erreur est que votre nom d'utilisateur - est chinois . Créez un nouveau dossier utilisateur avec l'anglais dans le répertoire utilisateur.Par exemple, vous pouvez nommer le dossier "DavidSmith". besoin de créer trois dossiers ("AppData", "Local", "Temp"). Répertoire de fichiers C:\Utilisateurs\DavidSmith\AppData\Local\Temp . Dans le Paramètres système avancés qui modifieront les variables d’environnement TMP et TEMP C:\Utilisateurs\DavidSmith\AppData\Local\Temp . Enregistrez-les. Après modification, ouvrez RStudio et essayez encore.

Remarque: TMP et TEMP sont modifiés dans USER VARIABLE.

0
BraveDavid

Dans mon cas, c'était Windows Defender qui empêchait Rstudio d'écrire un fichier sur le disque dur. Soit vous devez désactiver Controlled Folder Access, soit ajouter Rstudio à la liste des exclusions.  enter image description here

0
M.Qasim

J'ai eu cette erreur en raison d'un caractère non valide dans le nom de fichier à utiliser pour enregistrer le fichier, dans mon cas "/" (il existe de nombreux caractères de ce type qui ne peuvent pas être utilisés dans un nom de fichier). J'ai enlevé le personnage et ça a été résolu.

0
user10296319