2
在控制檯中鍵入0-2:-4
返回[1] -2 -1 0 1 2 3 4
。任何人都可以解釋這背後的邏輯嗎?爲什麼序列操作符0-2:-4會導致-2 -1 0 1 2 3 4?
在控制檯中鍵入0-2:-4
返回[1] -2 -1 0 1 2 3 4
。任何人都可以解釋這背後的邏輯嗎?爲什麼序列操作符0-2:-4會導致-2 -1 0 1 2 3 4?
由於操作的順序:
0 - (2:-4)
它擴展到
0 - c(2, 1, 0, -1, -2, -3, -4)
的更多細節,包括二元運算符的優先順序的完整列表,請參閱?Syntax
。
很好的編輯,謝謝@Gregor。 (不要以爲我實際上已經閱讀過那個頁面:-) – r2evans
它在R-FAQ(有點):參見7.33節和?語法。你的表達被解釋爲0減seq(2,-4)。一元「 - 」 - 運算符的優先級高於「冒號」,冒號「:」 - 運算符的優先級高於二進制減號。 –
只是一個普遍的說明 - 如果你沒有做到你期望的事情,並且你在這裏發佈,告訴我們你的期望不會有什麼壞處。我看到你的代碼,並知道R如何處理這些事情,所以在我看來,它看起來應該是這樣。這是一個簡單的例子,很容易找出你可能打算做的事情,但如果你問一個問題,澄清你的期望是個好主意。 – Dason