赋值运算符=和<-R 之间有什么区别?
我知道运营商略有不同,如本例所示
x <- y <- 5
x = y = 5
x = y <- 5
x <- y = 5
# Error in (x <- y) = 5 : could not find function "<-<-"
Run Code Online (Sandbox Code Playgroud)
但这是唯一的区别吗?
从 R3.0 开始,for循环返回NULL(如文档所述):
x <- for(i in 1:3) {i+1}
x
# NULL
Run Code Online (Sandbox Code Playgroud)
但是,使用右箭头赋值,它似乎返回最后一个值:
for(i in 1:3) {i+1} -> x
x
# [1] 4
Run Code Online (Sandbox Code Playgroud)
该文档没有评论->,并且正如 Ben Bolker 所指出的那样,->似乎<-无论如何都转换为:
expression(1 -> x)
# expression(x <- 1)
Run Code Online (Sandbox Code Playgroud)
所以我的问题是:
->与<-这种情况下的行为不同?