Ошибка в gzfile (файл, "wb" ): невозможно открыть соединение или сжатый файл

Я пытаюсь выполнить две вещи: во-первых, я создаю PDF с 4x5, заканчивая dev.off(), а затем пытаюсь создать новый график. Однако, после начала второго графика, я получаю:

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

Что это за ошибка? Рабочий каталог - это тот, к которому я имею доступ для чтения/записи, а мой жесткий диск не заполнен.

Кроме того, я использую RStudio.

Ответ 1

Это сожгло меня так, надеюсь, спасает кого-то другого. Проблема заключалась в том, что классификаторы, загруженные только в OS X, но в системе развертывания Linux, они не с ошибкой, указанной в вопросе. Проблема заключалась в том, что файлы на диске имели расширение abc.RData, а код modelAbc <- readRDS(file="abc.Rdata"). Разница в верхнем и нижнем регистре D в расширении .RData vs .RData не удалась бы в Linux. Это было не очень заметно, но проверьте расширения для случая.

Ответ 2

Возможно, вам стоит посмотреть здесь. В конце говорится:

Примечание: Наиболее распространенной причиной сбоя является отсутствие разрешения на запись в текущем каталоге. Для save.image и для сохранения в конце сеанса это будет отображаться сообщениями, например

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'

Так быстро, если вы попробуете getwd(), посмотрите, где находится ваш рабочий каталог. Если вы пытаетесь сохранить документ в том месте, где он не находится в вашем текущем рабочем каталоге, он выдает вам эту ошибку.

В конце вашего сообщения об ошибке говорится probable reason 'No such file or directory' Graphics error: Error in gzfile(file, "wb") : cannot open the connection Мой диагноз будет просто состоять в том, что он пытается сохранить ваш товар в неправильном месте, а RStudio не сможет найти нужное место.

Ответ 3

У вас может не быть права на сохранение файла в каталоге. В RStudio найдите рабочий каталог getwd(). Затем перейдите в каталог в Linux и наблюдайте за его владельцем ls -l. Теперь вы можете изменить владельца каталога на chown -R username directoryname. Но вы должны быть root.

Ответ 4

Это немного поздно, но для тех, кто придет сюда за помощью, я получил эту ошибку, когда пытался писать файл из RStudio, а путь к целевому файлу был очень длинным. Я понял, что это может быть проблемой, потому что, когда я написал файл в другое место с более коротким именем и попытался скопировать его в исходное место назначения, Windows сообщила мне об ошибке "Путь к файлу слишком длинный". Возможно, вам придется сохранить исходный файл в другом месте с более коротким абсолютным путем.

Ответ 5

Проблема решена путем указания полного пути к файлу:

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

Ответ 6

В последнее время я столкнулся с этим вопросом. Попробуйте отключить антивирус и создать пакет, это может помочь. Это сработало для меня. Обычно антивирус блокирует разрешения, и вы можете избежать этого, отключив его когда-нибудь непосредственно перед созданием пакета.

Ответ 7

У меня была такая же проблема. Для меня это было вызвано отсутствием достаточного дискового пространства на диске, где была установлена ​​R-студия. Свободное пространство работает.

Ответ 8

Причиной ошибки является то, что ваше имя пользователя - китайское. Пожалуйста, создайте новую папку пользователя с английским в каталоге пользователя. Например, вы можете назвать папку для "DavidSmith". Затем вы необходимо создать три папки ( "AppData", "Local", "Temp" ). Каталог файлов C:\Users\DavidSmith\AppData\Local\Temp. В дополнительных системных настройках, которые будут изменять переменные среды TMP и TEMP C:\Users\DavidSmith\AppData\Local\Temp. Сохраните их. После изменения откройте RStudio и повторите попытку.

Примечание: TMP и TEMP изменены в поле USER VARIABLE.

Ответ 9

Я просто столкнулся с этой проблемой после изменения моей языковой системы. Проверьте свой язык с помощью Sys.getlocale(). Измените его на соответствующий с помощью Sys.setLocale("LC_ALL","ENG") (замените "ENG" соответствующим)

Я не могу с уверенностью сказать, какой языковой стандарт был бы уместным, но он, похоже, согласован с OS OS по умолчанию.

Надеюсь, это поможет!

Ответ 10

В моем случае это был Защитник Windows, который помешал Rstudio писать любой файл на жестком диске. Вам нужно отключить Controlled Folder Access или добавить Rstudio в список исключений. введите описание изображения здесь

Ответ 11

У меня также была эта проблема при работе с RStudio и R Markdown. Я получал это сообщение об ошибке и имел раздражающее количество фатальных ошибок, которые закрывали RStudio. Моя проблема заключалась в том, что я работал с сетевого диска, и имя было слишком длинным, как в @AHedge выше, или мои сетевые брандмауэры давали мне проблемы. На данный момент я переместил свои рабочие файлы на рабочий стол, и все работает нормально. Не уверен, что это значит для моего управления файлами с течением времени.

Ответ 12

У меня была эта ошибка из-за недопустимого символа в имени файла, который будет использоваться для сохранения файла, в моем случае "/" (таких символов много, что нельзя использовать в имени файла). Я удалил персонажа, и он был решен.

Ответ 13

Просто хочу добавить больше ясности (сценарии из моего опыта) к тому, что упомянул М. Босолей.

Когда вы используете общий рабочий каталог и пытаетесь переписать файлы RDS, которые уже существуют в рабочем каталоге, написанном другим пользователем, вы получаете эту ошибку.

Поскольку некоторые люди уже цитировали, что удаление существующих файлов RDS или изменение рабочего каталога работает. Это не магия. Это просто работает, потому что вы пишете новый файл RDS и не пытаетесь переписать старые.

Ответ 14

В моем случае я получил сообщение об ошибке "Ошибка в gzfile (файл," wb "): не удается открыть соединение" при попытке выйти из R в приглашении Anaconda и сохранении образа рабочей области ". Я использую Windows 10 и R-3.5.2. Чтобы это исправить, мне нужно было перейти в папку Program Files, щелкнуть правой кнопкой мыши и папку R, затем выбрать "Свойства". Выберите вкладку "Безопасность", затем в поле "Имя группы или пользователя" выберите "Пользователи" и нажмите "Изменить". В "Разрешениях для пользователей" я проверил "Полный доступ" и "Изменить" и сохранил изменения. Тогда я смог сохранить изображение рабочей области.