Беда с функционированием R-пакета
Я установил пакет packrat
в какой-то момент я использовал его, возможно, один раз, и продолжил свою жизнь.
Тем не менее, несмотря на то, что он не загружался месяцами, это мешает мне регулярно использовать R.
По-видимому, наугад мой сеанс R в RStudio завершится с ошибками при определенных операциях, особенно при установке пакета. Вот самое последнее сообщение об ошибке (после запуска parallel::makeCluster(parallel::detectCores())
:
Ошибка в
file(filename, "r", encoding = encoding)
: не могу открыть соединениеЗвонки: источник -> файл
Дополнительно: предупреждающее сообщение:
В
file(filename, "r", encoding = encoding)
: не удается открыть файл 'packrat/init.R': такого файла или каталога нетИсполнение остановлено
Я проверил все папки на .libPaths()
а у меня даже нет packrat
установлено больше. Почему на земле R
все еще пытаюсь осуществить packrat
операции? И как я могу это остановить?
Мое решение для клейкой ленты на данный момент состоит в том, чтобы просто закрыть и снова открыть RStudio, который работает как прелесть для проблем установки пакетов.
Тем не менее, я не могу обойти это для makeCluster(detectCores())
в течение одного .R
сценарий у меня есть. Он отлично работает в другом скрипте для другого проекта.
Фон:
sessionInfo()
# R version 3.2.2 (2015-08-14)
# Platform: x86_64-pc-linux-gnu (64-bit)
# Running under: Ubuntu 14.04.2 LTS
# locale:
# [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=en_US.UTF-8
# [4] LC_COLLATE=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
# [7] LC_PAPER=en_US.UTF-8 LC_NAME=en_US.UTF-8 LC_ADDRESS=en_US.UTF-8
# [10] LC_TELEPHONE=en_US.UTF-8 LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=en_US.UTF-8
# attached base packages:
# [1] parallel stats graphics grDevices utils datasets methods base
# other attached packages:
# [1] doParallel_1.0.8 iterators_1.0.7 foreach_1.4.2 geosphere_1.4-3 xlsx_0.5.7 xlsxjars_0.6.1
# [7] rJava_0.9-6 xtable_1.7-4 sandwich_2.3-3 texreg_1.35 maptools_0.8-36 sp_1.1-1
# [13] ggmap_2.5.2 ggplot2_1.0.1 data.table_1.9.5
# loaded via a namespace (and not attached):
# [1] Rcpp_0.11.6 plyr_1.8.3 tools_3.2.2 digest_0.6.8 gtable_0.1.2
# [6] lattice_0.20-33 png_0.1-7 mapproj_1.2-4 proto_0.3-10 stringr_1.0.0
# [11] RgoogleMaps_1.2.0.7 maps_2.3-11 grid_3.2.2 jpeg_0.1-8 foreign_0.8-66
# [16] RJSONIO_1.3-0 reshape2_1.4.1 magrittr_1.5 codetools_0.2-11 scales_0.2.5
# [21] MASS_7.3-43 colorspace_1.2-6 stringi_0.5-9003 munsell_0.4.2 chron_2.3-47
# [26] rjson_0.2.15 zoo_1.7-12
Обновление 1:
Установка packrat
не имел никакого эффекта. Бег packrat::init()
вызвала ошибку до финиша; Ничего не изменилось.
Обновление 2:
Я выделил проблему, указав, что проблема связана с рабочим каталогом. Что в рабочем каталоге, который я использую, может вызывать проблемы? Некоторый остаточный файл от запуска packrat
ранее в этом каталоге?
1 ответ
Благодаря дальнейшим методам проб и ошибок, учитывая побочные эффекты @BondedDust, я, наконец, решил проблему. Ранее пытался использовать packrat
в конкретном рабочем каталоге, в котором я работал, похоже, остались некоторые следы, несмотря на последующее удаление packrat
,
Похоже, что это было решено путем удаления следующих трех файлов в рабочем каталоге: .Rprofile
, .Rhistory
, а также .RData
, Я не могу сказать конкретно, кто был виновником, хотя мое элементарное понимание проблемы предполагает .RProfile
виноват.
Проверьте каталог HOME на непреднамеренный.Rprofile.
Packrat, возможно, разместил это здесь, если вы пытались packrat::init() в HOME.
install.package () с packrat ищет.Rprofile при запуске. Поведение, которое я наблюдал, имеет приоритет HOME .Rprofile над getwd(), вызывая
cannot open file 'packrat/init.R': No such file or directory