2013-04-01 146 views
4

我正在嘗試使用R的adabag軟件包進行分類。Adabag軟件包中的R

以下調用與R的ada軟件包的ada()函數完美配合。

model<-ada(factor(label)~., data=trainingdata) 

但是當同樣的訓練數據集在以下adabag的函數調用時,它會返回一個錯誤:

model<-boosting(factor(label)~., data=trainingdata) 

Error in `[.data.frame`(data, , as.character(formula[[2]])) : 
undefined columns selected 

什麼這個錯誤提示是什麼呢?

+0

它表明在數據幀'trainingdata'中沒有名爲'factor(label)'的列。 –

+0

也許如果你有一個數據幀'trainingdata',你可以嘗試'model <-boosting(factor(trainingdata $ label)〜。,data = trainingdata)' – Duck

+3

我懷疑這個解決方案可能是在增強呼叫之前執行因子操作:'trainingdata $ label < - factor(trainingdata $ label); (bmodel <-boosting(factor(label)〜。,data = trainingdata))'。我注意到很多'機器學習'軟件包或者沒有公式接口,或者它們不完全實現。 –

回答

3

我跑boosting的第一個例子中的一個小的修改時,得到完全相同的錯誤消息:)

> data(iris) 
> iris.adaboost <- boosting(factor(Species)~., data=iris, boos=TRUE, mfinal=10) 
Error in `[.data.frame`(data, , as.character(formula[[2]])) : 
    undefined columns selected 

所以,你應該嘗試我只是在評論給了忠告(做因子( - 荷蘭國際集團預先)。到boosting的公式接口的功能還不足以處理其分析樹中的factor函數。

+1

謝謝。有效。 – Shahzad