Dan*_*iel 2 scope r environment-variables
在一些R脚本中,我在for循环中使用了一些虚拟变量.
变量本身没有用途,所以我根本不需要它.
例如 :
database = read.csv("data/somefile.csv")
for (i in 1:ncol(database)) {
name <- names(database)[i]
if (name %in% some_vector) {
label(database[, .i]) <- some_function(databas$somecolumn)
}
}
Run Code Online (Sandbox Code Playgroud)
在R Studio中,"Global Environement"选项卡会跟踪变量i并name(并给出它具有的最后一个值),尽管它们根本没有用处.
是否有任何优雅的方式来声明我的价值,以便它不会在全球环境中被跟踪?
用于local满足您所有的工作区卫生需求.
foo <- local({
x <- 0
for(i in 1:nrow(mtcars))
x <- x + mtcars$mpg[i]
x
})
Run Code Online (Sandbox Code Playgroud)
foo现在包含计算的结果,和临时变量i和x被丢弃.