зависимые пакеты не загружаются в R на Debian - PullRequest
2 голосов
/ 07 июля 2011

У меня проблемы с загрузкой пакета sde в чистой установке Debian под управлением R 2.11.1.Однако я видел такое поведение с некоторыми другими пакетами, поэтому я не думаю, что оно относится только к одному пакету.Вот пример загадки:

>install.packages("sde", lib.loc=libPath)

... устанавливает sde и пакеты, от которых он зависит: zoo, fda

> library(sde,  lib=libPath)
Loading required package: fda
Error: package 'fda' could not be loaded
In addition: Warning message:
In library(pkg, character.only = TRUE, logical.return = TRUE, lib.loc = lib.loc) :
  there is no package called 'fda'

ок, это странно.Я видел FDA устанавливается.Поэтому я вручную загружаю зависимости:

> library(zoo,  lib=libPath)
> library(fda,  lib=libPath)
Loading required package: splines

хорошо, это сработало.Теперь давайте попробуем sde:

> library(sde,  lib=libPath)
To check the errata corrige of the book, type vignette("sde.errata")

WTF?он загрузился нормально?!?

Так почему я могу вручную загружать пакеты, но R не собирает их автоматически?

Добавив в замешательство, я обнаружил во время отладки, что если я неиспользуйте lib=libPath тогда все работает просто отлично.Похоже, что использование нестандартного пути для пакетов все это портит ... но почему?

1 Ответ

3 голосов
/ 07 июля 2011

Вы подтвердили мои подозрения в комментариях. Вам нужно сделать одну из двух вещей:

.libPaths(libPath)

или

library(sde,  lib=c(libPath,.libPaths()))

Я предпочитаю первый метод, потому что второй требует, чтобы вы делали это для всех вызовов library.

...