2016-06-08 71 views
0

我正在使用泰坦尼克號數據集。我試圖在CABIN欄中填寫空格。我從CABIN列值中提取了第一個字母,然後將它們放在CABIN_NEW列中。之後,我使用rpart進行預測,但每次運行下面的代碼時,R都需要很長時間(還沒完成一次,每次都必須終止)。在R Studio中執行rpart

數據集有1309行,我正在使用的列在代碼中。我使用的系統是在4 GB內存,i5處理器和Window 7

combifit <- rpart(Cabin_New ~ Pclass + Sex + Age + SibSp + Parch + Fare + Embarked + Title 
        + FamilySize + Surname + FamilyID, 
        data = combi[!is.na(combi$Cabin_New),], method = 'class') 

回答

0

我看到你已經使用了很多因素變量的運行。請檢查每個因素中存在多少個因子水平。如果這個數字很高,可以說對於姓氏,如果它是100,那麼R將不得不創建100個變量,以此類推。所以我的猜測是,由於這些因素變量,rpart必須研究很多變量,才能決定拆分。因此需要很長時間。

還讀了rpart.control上的一點,因爲rpart的分割次數取決於傳遞給rpart的參數。例如cp就是這樣一個參數。其默認值是0.01。嘗試將其值從0.5更改爲0.1。與其他參數類似地玩,你可能能夠更快地運行rpart