readRDS (файл) в R - PullRequest
       24

readRDS (файл) в R

21 голосов
/ 25 июня 2011

Всякий раз, когда я пытаюсь установить пакет в R, я получаю следующую ошибку:

Error in readRDS(file) : unknown input format

Это только начало происходить после того, как у меня произошел сбой системы.Я использую 32-битную версию R 2.13.0 под Windows 7. Я попытался удалить и переустановить R, но продолжаю получать сообщение об ошибке.Можно ли как-то исправить это, не удаляя все (то есть все пакеты, которые я установил) и не начав заново?

Спасибо

Ответы [ 9 ]

18 голосов
/ 03 июля 2013

Вот предложения, с которыми я столкнулся:

  1. Удалите файлы .Rhistory и .RData в каталоге, в котором вы запускаете R.
  2. Выполнить update.packages()
  3. Попробуйте обнаружить «плохие файлы» в каталогах вашей библиотеки. Вы можете сделать это в R

    # List the library paths
    # The issue is likely to be in the first directory
    paths = .libPaths()
    
    ## Try and detect bad files
    list.files(paths, 
           pattern = "^00LOCK*|*\\.rds$|*\\.RDS$",
           full.names = TRUE)
    
    ## List files of size 0
    l = list.files(paths, full.names = TRUE)
    l[sapply(l, file.size) == 0]
    

    Удалить любые выделенные файлы / каталоги. Вы можете использовать file.remove(), если действительно хотите.

  4. Удалить каталог, в котором вы сохранили загруженные пакеты.

У меня сработало только решение 3.

Ссылка:

  • Список рассылки R-sig-Debian
  • Вариант 3 представлял собой комбинацию ответов, предоставленных разными людьми за последние несколько лет, в том числе Чуньсяо Сюй, Ларри Хунсикером и Фрэнком Харреллом
4 голосов
/ 06 июля 2016

Запустите find /usr/local/lib/R/site-library/ /usr/lib/R/library/ /usr/lib/R/site-library/ ~/.local/lib/ -iname '*rds' -a -size 0 и затем удалите найденные файлы.

2 голосов
/ 27 февраля 2018

Вот что я должен был сделать, чтобы решить эту ошибку:

  • Откройте Rstudio, перейдите на вкладку установки в пакетах
  • Обратите внимание на путь установки в библиотеку. (Где вашпакет будет сохранен)
  • Перейдите по пути установки библиотеки. И удалите последние пакеты
  • . Обновите информацию о пакете в Rstudio
.
2 голосов
/ 20 апреля 2017

Попробуйте что-нибудь простое: если это файл .rda, используйте load вместо readRDS. Затем вы можете сохранить загруженный файл в формате .rds и снова попробовать readRDS.

2 голосов
/ 22 октября 2016

Решение Chunxiao Xu и Рандо Хинна, приведенное выше, сработало для меня, с небольшим изменением.

Сначала измените каталоги на свой личный каталог пакета R, затем запустите: find -iname '* rds' -a -size0

Удалите каталоги, содержащие любые файлы длины 0 в приведенном выше списке.Затем снова откройте R (или RStudio) и переустановите удаленные пакеты.

Теперь вы сможете снова перечислить пакеты.

В приведенном выше оригинальном предложении Chunxiao Xu перечислены ВСЕ каталоги пакетов R.Но точное расположение этих каталогов будет варьироваться от установки к установке, и их адреса должны быть отредактированы для вашей установки.

Ларри Хунсикер

1 голос
/ 12 января 2018

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

0 голосов
/ 02 апреля 2018

У меня также было несколько проблем при открытии файла .RDS, либо «ошибка чтения из соединения», либо «неизвестный формат ввода».Я пробовал с несколькими версиями R, с версией 3.4.2.сработало следующее: (я случайно удалил rstudio и установил его снова, также установил более старую версию R 3.4.2, не знаю, что это меняет)

  1. настроил новый рабочий каталог
  2. Я открыл файл RDS напрямую, а не загружал его (поэтому сохранял только во временные файлы), затем смог открыть его в R
  3. Я переместил его из временных файлов в свой новый рабочий каталог иИспользовал команду Data_Essay_Account <- readRDS("C:/.../newdirectory/Data_Essay_Account.RDS"), и она сработала.

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

0 голосов
/ 17 октября 2017

Я проверил эту проблему на нескольких форумах, а затем попробовал это, и это сработало для меня:

1) Сначала удалите пакет ggplot2

remove.packages("ggplot2")

2) Установите пакет снова

install.packages("ggplot2")

3) перезапустите rstudio и снова установите свой пакет, надеюсь, это поможет

Кажется, что проблема была связана с тем, что требуемый пакет (в моем случае ggplot2) был поврежден и мешал установкелюбого нового зависимого пакета.

0 голосов
/ 27 августа 2017

У вас могут быть проблемы с пакетами R.Посмотрите, возникла ли проблема после того, как вы установили несколько упакованных или скопировали пакеты.

Что вы можете сделать, это скопировать все пакеты из библиотеки и сохранить ее где-нибудь, затем скопировать некоторые пакеты в библиотеку и перезапуститьR протестировать его и посмотреть, как он работает, вы должны попробовать со всеми пакетами один за другим.У меня та же проблема, и это было связано с проблемой пакета.

...