【发布时间】:2023-04-02 03:25:01
【问题描述】:
我有一个 R 脚本,它采用 R 的其他脚本并以这种方式操作它们,并执行它们的代码。我的脚本使用了一些变量(显然),而当其他脚本使用通用变量名时,我就陷入了混乱。我希望我可以像在胶囊中一样执行另一个脚本,这样重合的变量就不会相互影响。
我一直在阅读有关环境的文章,并进行了很多尝试,但我没有理解它们的真正含义。
例子:
script1.txt
___________
i=sample(10:20,1)
script2.txt
___________
i=sample(10:20,1)
myscript.txt
___________
other.script = c("script1.txt", "script2.txt")
for( i in 1:2 ) {
source(other.script[i])
}
i==2
我希望每个变量“i”在不影响其他变量的情况下履行其职责(特别是 myscript 中的那个,我不太关心其他变量)。
【问题讨论】:
-
你能用另一个变量像j吗?如果您描述您的设置以及您正在尝试做什么,可能会更有帮助?
-
@TylerRinker 如果您的脚本变得太大,则依赖于不同的变量名称可能会很棘手。对函数的抽象确保变量是函数的本地变量,防止任何不必要的交互。