我有两个文件,例如" aa.R"和" bb.R",都有一个功能" foo()"。
如何从控制台调用同名的两个函数?
例如在" aa.R"
中hi <- function(){
print("hi, aa")
}
in&#34; bb.R&#34;
hi <- function(){
print("hi, bb")
}
我尝试了以下内容:
source("aa.R")
source("bb.R")
aa::hi()
但它不起作用。如何从&#34; aa.R&#34;?
获取hi()
功能
答案 0 :(得分:3)
你没有。没有认真,只是没有。你只是要求不可复制的错误和不必要的混淆。
更改两个名称中的一个。或者,在调用它们时重命名它们,因此如果它们被覆盖则无关紧要。
Hello world
答案 1 :(得分:2)
source
进入不同的环境:
aa <- new.env()
bb <- new.env()
source(textConnection('hi <- function(){
print("hi, aa")
}'), local = aa)
source(textConnection('hi <- function(){
print("hi, bb")
}'), local = bb)
aa$hi()
#[1] "hi, aa"
bb$hi()
#[1] "hi, bb"
但是,我建议您认真考虑从两个文件中构建两个包。然后你可以使用::
。