5

这只是一种风格偏好吗?

据我所知,它们是相同的。

我看到很多人更喜欢“更长”的<-版本,我不知道为什么(也许远离===混淆?)

4

1 回答 1

6

不,它们并不完全相同:=运算符不能在任何可以使用的地方使用<-

运算符 <- 和 = 分配到评估它们的环境中。运算符 <- 可以在任何地方使用,而运算符 = 只允许在顶层(例如,在命令提示符下键入的完整表达式中)或作为表达式括号列表中的子表达式之一。

范围也有区别。有关更多详细信息,请参阅此答案

哪个更好取决于你问谁。


阅读 Robert 和 Casella 的“用 R 介绍蒙特卡洛方法”:

“赋值运算符是 =,不要与 == 混淆,后者是用于相等的布尔运算符。较旧的赋值运算符是 <- 并且出于兼容性原因,它仍然可以使用,但应该忽略它以确保更清晰的编程.(正如 Spector, P. (2009) 所指出的那样。“使用 R 进行数据操作”-第 8.7 节。使用 system.time 时例外,因为 = 用于识别关键字)

资源


另一方面,谷歌的 R 风格指南推荐使用<-

任务

使用 <-,而不是 =,进行赋值。


x <- 5


x = 5

于 2010-08-08T09:09:25.327 回答