2016-02-20 41 views
0

當我在R studio中運行我的代碼時,我沒有收到任何錯誤。但是,當我在bash中的HPC羣集中運行相同的代碼時,出現此錯誤:task 1 failed - "there is no .Internal function 'lengths'"。我在羣集中運行的版本是version 3.1.3,而在R studio中它是version 3.2。這是否導致錯誤?我該如何解決這個問題?錯誤:任務1失敗 - 「沒有.Internal函數'長度'」

+0

'lengths'是'base'功能。損壞的R安裝? –

+0

是的,R版本是原因。 R 3.2中引入了「長度」。通過定義長度<-function(x)vapply(x,length,1L)'來升級或更改腳本。 – nicola

回答

2

它並不奇怪,因爲lenghts3.2版本中引入的每changelog

CHANGES IN R 3.2.0:

NEW FEATURES:

  • New lengths() function for getting the lengths of all elements in a list.
+0

正如我在評論中提到的那樣,這就是確定的原因。但是,我有點擔心他得到的錯誤信息。他是否在代碼中調用'.Internal(長度(...))'而不是'lengts(...)'?有人知道缺少的功能,並重新定義了「長度」,因爲它在R 3.2中? – nicola

+0

@帕斯卡是的,我知道。我徘徊在錯誤消息。如果在R 3.1上運行「長度(對象)」實例,則應該收到「未找到函數」類型的錯誤,而不是實際報告的OP,因爲該函數在R 3.1中不存在。另一方面,如果編寫代碼的人意識到了這個問題,他可能會想通過在代碼中複製/粘貼R 3.2的「長度」定義來解決問題(或者通過調用'.Internal(長度)直)。 – nicola

+0

@nicola不好意思打擾。 –

相關問題