假设有一种方法(让我们说"样本()")并且它存在于多个包中(让我们在包中说出" base& #34;和#34; arules")。现在,如果我调用sample()调用哪个包,它是否会调用包" base"或者" arules"以及它如何决定调用哪一个?
答案 0 :(得分:8)
它选择哪一个位于search
路径的第一位:
search()
[1] ".GlobalEnv" "package:arules" "package:Matrix"
[4] "package:stats" "package:graphics" "package:grDevices"
[7] "package:utils" "package:datasets" "package:methods"
[10] "Autoloads" "package:base"
所以这将是arules版本。这是一种S4方法,实际上可以调用基本版本。请注意,base始终位于搜索路径的最后,并且全局环境始终是第一位的。通常,软件包在第二位加载(可以使用pos
参数更改为library
),并在其他软件加载时向下移动。
答案 1 :(得分:4)
我用这个:
base::sample()
arules::sample()