[R] library(...,pos=) is not consistent
Gabor Grothendieck
ggrothendieck at gmail.com
Thu Jun 17 19:33:38 CEST 2010
On Thu, Jun 17, 2010 at 1:28 PM, Gabor Grothendieck
<ggrothendieck at gmail.com> wrote:
> On Thu, Jun 17, 2010 at 1:11 PM, Russell Ivory
> <Russell.Ivory at merrickbank.com> wrote:
>> I want to be able to load a library in a specified position using the
>> pos= argument and have any subsequent library required by the one I'm
>> loading go into a specified library as well. For example, in loading
>> caret, it requires and loads lattice as well. When I specify that caret
>> goes into position 9, lattice goes into position 2 by default. Is there
>> a way to specify that by loading a library into position n, any
>> subsequent library goes into, say, n+1 and so on? I need to reserve
>> position 2.
>>
>
> Its a bit tedious but if you load each dependent package prior to any
> package depending on it then you can get them to go into position 9 or
> higher. This must be done recursively so, for example, you need to
> load plyr before reshape since caret depends on reshape which depends
> on plyr. In this case it works out like this:
>
>> library(plyr, pos = 9)
>> library(reshape, pos = 9)
>> library(lattice, pos = 9)
>> library(caret, pos = 9)
>> search()
> [1] ".GlobalEnv" "package:stats" "package:graphics"
> [4] "package:grDevices" "package:utils" "package:datasets"
> [7] "package:methods" "Autoloads" "package:caret"
> [10] "package:lattice" "package:reshape" "package:plyr"
> [13] "package:base"
>
Also if would be possible to automate this by recursively following
packageDescription("caret")$Depends and issuing the requisite library
calls.
More information about the R-help
mailing list