R无法在local()中定义变量,错误:中的意外符号,错误:“)”中的意外:')'

亚马逊人

我正在尝试在R中的local()中运行一些代码,因此我的环境中没有很多讨厌的变量,但是我只是意识到我无法在local()中定义新变量。例如:

local(
     var1 = 1
     print(var1)
  )

给我以下错误:

Error: unexpected symbol in:
       "  var1 = 1
        print"
      > )
       Error: unexpected ')' in ")"
      > 

但是,如果我在local()的forloop中创建一个变量,那就可以了。以下代码运行:

local(
           for (v in 1:3) {
             var1 = v
             print(var1)
           }
        )

为什么是这样?

更新:以下代码有效(如果我在大括号中将local()中的所有内容都包含在内

local(
     {var1 = 1
     print(var1)}
  )

同样,这里有什么区别?

你好

local有一个主要论点,expr您编写的第一个代码将被解释为两个参数。例如,请参见下面的示例,无论var1定义在何处,您的第一个代码的逻辑都将在其中起作用用大括号括起来会创建一个表达式对象,该对象成为local的单个参数。for循环做同样的事情。

local(
  var1 = 1
  print(1)
)
#> Error: <text>:4:3: unexpected symbol
#> 3:   var1 = 1
#> 4:   print
#>      ^

reprex软件包(v0.2.0)于2018-05-01创建

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章