<-
R では、およびを介した代入が可能です=
。
両方の代入演算子には微妙な違いがありますが、 は値を引数にマッピングする演算子としても使用されるため、 はあいまいなステートメントにつながる可能性があるため<-
、 よりも優れた選択である幅広いコンセンサスがあるようです。次に例を示します。=
=
> system.time(x <- rnorm(10))
user system elapsed
0 0 0
> system.time(x = rnorm(10))
Error in system.time(x = rnorm(10)) : unused argument(s) (x = rnorm(10))
実際、Google スタイル コードでは、代入の使用は許可されていません (逆の見方については、この回答=
へのコメントを参照してください)。
<-
また、代入演算子としてもほぼ独占的に使用しています。ただし、前の文のほとんどがこの質問の理由です。私のコードで代入演算子として機能する場合=
、それは常に偶発的であり、それが問題を引き起こす場合、これらは通常見つけにくいです。
割り当てをオフにして、割り当てに使用される=
たびにRにエラーをスローさせる方法があるかどうかを知りたい=
です。
=
アタッチされた名前空間には、割り当てに使用し、壊れてはならないコードが存在する可能性があるため、最適には、この動作はグローバル環境のコードに対してのみ発生します。
(この質問は、ジョナサン・ネルソンとの議論に触発されました)