2016-08-02 81 views
-1

我有一個包含377個obs和7個變量的數據集。 (我假設它不是很大的數據集),當我嘗試使用Party包生成決策樹時。我得到以下錯誤:關於決策樹的錯誤

Error: cannot allocate vector of size 2.8 Gb 
    In addition: Warning messages: 
    1: In matrix(0, nrow = p * q, ncol = p * q) : 
    Reached total allocation of 8107Mb: see help(memory.size) 
    2: In matrix(0, nrow = p * q, ncol = p * q) : 
    Reached total allocation of 8107Mb: see help(memory.size) 
    3: In matrix(0, nrow = p * q, ncol = p * q) : 
    Reached total allocation of 8107Mb: see help(memory.size) 
    4: In matrix(0, nrow = p * q, ncol = p * q) : 
    Reached total allocation of 8107Mb: see help(memory.size). 

我的筆記本電腦有8GB內存,我不明白爲什麼我不斷收到這些錯誤信息。

+0

當你有很多級別的分類變量時,會出現這樣的內存問題,其中ctree()詳盡地搜索所有分割爲兩組。也許你可以發佈一些關於你使用的數據(甚至是整個數據)的更多細節,以及所使用的'ctree()'調用? –

回答

0

因爲您的內存不足。 R將獲得內存限制,默認爲操作系統所說的可用內存。我認爲你可能會將內存分配設置得更高,它只會使用虛擬內存(磁盤)呢?但我不確定,最好的辦法是獲得更多的內存。

我剛纔在我的8GB筆記本電腦上遇到了這個問題,所以我一直等到回到家,然後在我的32GB桌面上運行,這沒有問題。