我想知道如何从不同的R脚本文件运行不同的功能。
例如,在Main.R
中:
source("Database.R")
msci_data <- getIndex() #function from Database.R
source("Positions.R")
current_positions <- getPositions() #function from Positions.R
我意识到在运行getPositions()
方法之后,我的msci_data
数据帧被删除了。无论如何,我可以从两个不同的源文件中调用多个函数吗?
非常感谢
答案 0 :(得分:1)
这是一个简短的演示,通常,采购多个R脚本不会从您的全局环境中删除任何内容。
我在文件foo.R
中:
foo <- function(x) x^2
然后我有一个文件bar.R
:
bar <- function(x) x^3
然后从main.R
,我执行以下操作:
x <- 1:10
ls()
# [1] "x"
source("foo.R")
foo(x)
# [1] 1 4 9 16 25 36 49 64 81 100
ls()
# [1] "foo" "x"
source("bar.R")
bar(x)
# [1] 1 8 27 64 125 216 343 512 729 1000
ls()
# [1] "bar" "foo" "x"
您可以看到所有功能均按预期工作,并且从全局环境中什么都没有删除。一定是Positions.R
文件中的某些内容导致了此行为,所以没有人可以帮助您解决问题而又看不到代码。