R参数中的运算符[duplicate]

问题描述 投票:-2回答:1

R编程中>之间有什么区别?

我试图通过Google和stackoverflow找到答案,但仍然无法获得答案。

r operator-keyword
1个回答
-1
投票

[<<-<-都是赋值运算符,但是它们有细微的差别。

[<-仅适用于使用它的本地环境,因此,如果使用它在函数内部分配变量,则该变量在该函数外部将不可用。

如果在函数内部使用<<-来声明一个新变量,并且其名称在其他任何地方都没有使用过,它将在全局环境中创建该变量。如果使用它分配给函数(或包含函数的任何函数)中的现有变量,则将其分配给现有变量。

从一个函数中分配给全局环境几乎总是一个坏主意。如果绝对have从函数内部写入变量,则最好使用assign将变量写入另一个持久性环境。

local_assign <- function() {a <- 1;}
global_assign <- function() {b <<- 1;}

local_assign()
global_assign()
a
# Error: object 'a' not found
b
# [1] 1
© www.soinside.com 2019 - 2024. All rights reserved.