資料科學熱門語言R推出了最新版本4.0.0,除了修復不少臭蟲之外,還有許多重大更改,因此新發布的版本號也就跟著大躍進,其中甚至有可能影響R運算結果的變動,因此開發者在執行以先前版本R撰寫的腳本,需要先經過驗證,而且所使用的套件,也需要為R 4.0.0重新安裝。

R 4.0.0中最重要的更新,便是導入的字串資料,不再被預設轉換成類別變數(Factor),過去stringsAsFactors的選項預設為True,因此導入的字串資料都會被轉換成Factor物件,但是在最新的版本中,stringsAsFactors的預設改為FALSE。

對於先前的R使用者來說,stringsAsFactors預設為True,雖然讓統計模型更簡單,並且使用較少的記憶體,但是可能造成混淆,因為使用者會以為是普通字串。這個改動破壞了許多套件的相容性,但目前大多數CRAN上的套件已經更新,另外,這同時也可能影響使用者自己撰寫的腳本,使用者可以更改寫法,或是在導入函式呼叫中,加入顯式stringsAsFactors宣告。

新版本R添加了用來指定原始字符字串的新語法,使用者現在可以使用類似於C++的表示法r"(...)",在括號中填入任何字符序列,包括雙引號、中括號和大括號等,這對於在寫HTML程式碼、正規表示式,和其他包含引號和反斜線的字串時特別有用。

R 4.0.0強化了參照計數系統,由於當用戶刪除R中的物件時,通常關聯的記憶體會跟著釋出給作業系統,在過去的R版本,當對任何記憶體區塊具有兩個以上的參照,則系統便會直接崩潰,而從R 4.0.0開始,所有的參照都有計數,R能夠盡量收回記憶體,減少R的整體記憶體使用量。

這個改變不會影響開發者撰寫程式碼的方式,但會使R的執行更為快速,特別是在記憶體有限的系統上。在效能改善上,還有網格圖系統(Grid Graphics System)也重新翻新,ggplot2繪圖渲染速度變得更快,Socket連接更快速,各式函式也多獲加速。

於R 4.0.0中,處理矩陣和陣列更加一致,雖然在概念上矩陣只是二維陣列,但是過去版本的R,在部分情況下,處理矩陣和陣列物件的方法並不一樣,而在這個最新版本中,矩陣物件將繼承陣列類別,以消除不一致的情況。

目前R 4.0.0已經發布在cran.r-project.org上,而Windows、Mac和Linux的二進位檔案,也都已經可以下載使用。

熱門新聞

Advertisement