私は関数 system.time() を使用していますが、驚くべきことを発見しました。「<-」の代わりに割り当て記号「=」をよく使用します。ほとんどの R ユーザーが「<-」を使用していることは承知していますが、私のコードでは「=」の方がわかりやすいと思います。したがって、「=」を使用して関数 system.line() に値を割り当てると、次のエラー メッセージが表示されました。
コードは次のとおりです。
a = matrix(1, nrow = 10000)
require(stats)
system.time(a[,1] = a[,1]*2) #this line doesn't work
#Error: unexpected '=' in "system.time(a[,1] ="
system.time(a[,1] = a[,1]*2) #this line works
system.time(for(i in 1:100){a[,1] = a[,1]*i}) #this line works!!!!
私が見つけた:「=」と「<-」の間に技術的な違いはありますか?これは、「=」は関数で引数を割り当てるための記号であるため、割り当てる関数で「=」を使用できないことを説明しています。しかし、それが時々機能することに驚きました (次のコードを参照)。
ここで機能する理由を知っている人はいますか?(また、最初のケースで機能しないのは、a[,1] が関数 system.time() のパラメーターではないためです...)
どうもありがとうございました。エドウィン。